class Alimento

La clase Alimento se usar para la definicion de los diferentes alimentos y sus propiedades

Attributes

carbohidratos[R]
gei[R]
lipidos[R]
nombre[R]
proteinas[R]
terreno[R]

Public Class Methods

new(nombre,proteinas,carbohidratos,lipidos,gei,terreno) click to toggle source
# File lib/practica/practica6.rb, line 5
def initialize(nombre,proteinas,carbohidratos,lipidos,gei,terreno)   # Constructor que recibe como parametros el nombre,proteinas,carbohidratos,lipidos, gei y terreno del alimento
        
        @nombre=nombre.to_s
        @proteinas=proteinas.to_f
        @carbohidratos=carbohidratos.to_f
        @lipidos=lipidos.to_f
        @gei=gei.to_f
        @terreno=terreno.to_f
end

Public Instance Methods

<=>(other) click to toggle source
# File lib/practica/practica6.rb, line 47
def <=> (other)                # Operador <=> en funcion del valor energetico
        return nil unless other.instance_of? Alimento     # retornamos nil en caso de que el objeto a comparar no sea una instancia de Alimento
        get_valE <=> other.get_valE
end
==(other) click to toggle source
# File lib/practica/practica6.rb, line 36
def == (other)         # Operador de comparacion
        if other.instance_of? Alimento # verificamos que el otro objeto sea una instancia de Alimento
                        
        @nombre == other.nombre && @proteinas == other.proteinas && @carbohidratos==other.carbohidratos && @lipidos==other.lipidos &&  @gei==other.gei && @terreno==other.terreno
        #retornamos true si todos y cada uno de los atributos son iguales
        elsif  #retornamos false en caso de que al menos uno sea diferente
                
                false        
        end
end
get_GEI() click to toggle source
# File lib/practica/practica6.rb, line 19
def get_GEI        # Getter del atrito @gei
        return @gei
end
get_alimento() click to toggle source
# File lib/practica/practica6.rb, line 29
def get_alimento       # Metodo que devuelve el objeto en formato vector
        comida = [@proteinas,@carbohidratos,@lipidos,@gei,@terreno]
        return comida
end
get_name() click to toggle source
# File lib/practica/practica6.rb, line 15
def get_name   # Getter del atributo @nombre
  return @nombre
end
get_terreno() click to toggle source
# File lib/practica/practica6.rb, line 23
def get_terreno        # Getter del atributo @terreno
        return @terreno
end
get_valE() click to toggle source
# File lib/practica/practica6.rb, line 33
def get_valE           # Metodo que devuelve el equivalente energetico del aliemnto (kcal)
        return(@proteinas*4 + @carbohidratos*9 + @lipidos*4).round(2)
end
to_s() click to toggle source
# File lib/practica/practica6.rb, line 26
def to_s               # Metodo que devuelve el objeto formateado en string
        return "#{@nombre},#{@proteinas},#{@carbohidratos},#{@lipidos},#{@gei},#{@terreno}"
end