Class: Food

Inherits:
Object
  • Object
show all
Includes:
Comparable
Defined in:
lib/alimento/alimento.rb

Overview

Note:

Clase Food (Alimento)

Author:

  • Nicolangelo Famiglietti

Direct Known Subclasses

Aibc, Piramide

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(nombre, proteinas, glucidos, grasas) ⇒ Food

Note:

Inicializador

Returns:

Inicializa nombre, proteinas, glucidos y grasas



13
14
15
# File 'lib/alimento/alimento.rb', line 13

def initialize(nombre, proteinas, glucidos, grasas)
  @nombre, @proteinas, @glucidos, @grasas, @valores = nombre, proteinas, glucidos, grasas
end

Instance Attribute Details

#glucidosObject

Note:

Se tiene acceso de lectura y escritura a todos los atributos



7
8
9
# File 'lib/alimento/alimento.rb', line 7

def glucidos
  @glucidos
end

#glucosaObject

Note:

Se tiene acceso de lectura y escritura a todos los atributos



7
8
9
# File 'lib/alimento/alimento.rb', line 7

def glucosa
  @glucosa
end

#grasasObject

Note:

Se tiene acceso de lectura y escritura a todos los atributos



7
8
9
# File 'lib/alimento/alimento.rb', line 7

def grasas
  @grasas
end

#n_grupoObject

Note:

Se tiene acceso de lectura y escritura a todos los atributos



7
8
9
# File 'lib/alimento/alimento.rb', line 7

def n_grupo
  @n_grupo
end

#nombreObject

Note:

Se tiene acceso de lectura y escritura a todos los atributos



7
8
9
# File 'lib/alimento/alimento.rb', line 7

def nombre
  @nombre
end

#proteinasObject

Note:

Se tiene acceso de lectura y escritura a todos los atributos



7
8
9
# File 'lib/alimento/alimento.rb', line 7

def proteinas
  @proteinas
end

#valoresObject

Note:

Se tiene acceso de lectura y escritura a todos los atributos



7
8
9
# File 'lib/alimento/alimento.rb', line 7

def valores
  @valores
end

Instance Method Details

#<=>(other) ⇒ Object

Note:

Metodo comparable de la clase Food

Returns:

0 Si es igual 1 Si es mayor -1 Si es menor



37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
# File 'lib/alimento/alimento.rb', line 37

def <=>(other)
    if @proteinas == other.proteinas
        if @glucidos == other.glucidos
            if @grasas == other.grasas
                return 0
                elsif
                    grasas > other.grasas
                    return 1
                else
                    return -1
            end
        elsif
            glucidos > other.glucidos
            return 1
        else
            return -1
        end
    elsif
        proteinas > other.proteinas
        return 1
    else
        return -1
    end
end

#get_veObject

Note:

Método get_ve

Returns:

Devuelve el valor en calorias del alimento



26
27
28
29
30
# File 'lib/alimento/alimento.rb', line 26

def get_ve
    sum = (@proteinas * 4) + (@glucidos * 4) + (@grasas * 9)
    # aux = "#{sum}" + " Kcal"
    return sum
end

#to_sObject

Note:

Método to_s

Returns:

Devuelve los datos del alimento formateado



19
20
21
22
# File 'lib/alimento/alimento.rb', line 19

def to_s
    s="#{@nombre}: #{@proteinas} · #{@glucidos} · #{@grasas}"
    return s
end