class DietaDia
Representación de un Menu
dietetico
@author Eugenio Jose Gonzalez Luis @since 1.0.0
Attributes
almuerzo[R]
cena[R]
conversiones[R]
desayuno[R]
nombre[R]
Public Class Methods
new(nombre) { |self| ... }
click to toggle source
# File lib/dietaDia.rb, line 13 def initialize(nombre, &bloque) @conversiones = [ ["1 rodaja", 28], ["1 porcion", 100], ["1 taza", 200], ["1/2 cucharon",20], ["1 pieza", 150], ["1 vaso", 100]] @nombre = nombre @desayuno = Menu.new() @almuerzo = Menu.new() @cena = Menu.new() if block_given? if bloque.arity == 1 yield self else instance_eval(&bloque) end end end
Public Instance Methods
<=>(other)
click to toggle source
Metodo para comparar dos dietas @param [Individuo] otra dieta a comparar
@return [-1,0,1] -1 si es menor, 0 si son iguales, 1 si es mayor
# File lib/dietaDia.rb, line 53 def <=>(other) kcal <=> other.kcal end
is_enough(persona, cantidad)
click to toggle source
metodo que calcula si una dieta es suficiente para un individuo dado @param [Individuo] persona persona para la cual se calcula si es suficiente @param [cantidad] cantidad de ejercicio que esa persona realiza
@return [Boolean] devuelve si la dieta es o no suficiente para una persona
# File lib/dietaDia.rb, line 45 def is_enough(persona, cantidad) x = kcal return (persona.gasto_energetico_total(cantidad) <= x * 1.1) && (persona.gasto_energetico_total(cantidad) >= x * 0.9) end
kcal()
click to toggle source
metodo que calcula el coste calorico de una dieta diaria
@return [Number] Coste calorico de la dieta diaria
# File lib/dietaDia.rb, line 36 def kcal @desayuno.kcal + @almuerzo.kcal + @cena.kcal end
to_s()
click to toggle source
Convierte el objeto en un String @return [String] descripción del plato en una cadena de caracteres
# File lib/dietaDia.rb, line 59 def to_s texto = @nombre texto << "\n#{'=' * @nombre.size}\n" texto << "Composicion nutricional: \n" texto << @desayuno.to_s texto << "\n" texto << @almuerzo.to_s texto << "\n" texto << @cena.to_s texto << "\n" texto << "#{@kcal}" texto << "\n" return texto end