Class: DietaDia
Overview
Representación de un Menu dietetico
Instance Attribute Summary collapse
-
#almuerzo(options = {}) ⇒ Object
readonly
Añade un almuerzo.
-
#cena(options = {}) ⇒ Object
readonly
Añade una cena.
- #conversiones ⇒ Object readonly
-
#desayuno(options = {}) ⇒ Object
readonly
Añade un desayuno.
- #nombre ⇒ Object readonly
Instance Method Summary collapse
-
#<=>(other) ⇒ -1, ...
Metodo para comparar dos dietas.
-
#initialize(nombre, &bloque) ⇒ DietaDia
constructor
A new instance of DietaDia.
-
#is_enough(persona, cantidad) ⇒ Boolean
metodo que calcula si una dieta es suficiente para un individuo dado.
-
#kcal ⇒ Number
metodo que calcula el coste calorico de una dieta diaria.
-
#to_s ⇒ String
Convierte el objeto en un String.
Constructor Details
#initialize(nombre, &bloque) ⇒ DietaDia
Returns a new instance of DietaDia.
13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
# 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 |
Instance Attribute Details
#almuerzo(options = {}) ⇒ Object (readonly)
Añade un almuerzo
88 89 90 |
# File 'lib/dietaDia.rb', line 88 def almuerzo @almuerzo end |
#cena(options = {}) ⇒ Object (readonly)
Añade una cena
99 100 101 |
# File 'lib/dietaDia.rb', line 99 def cena @cena end |
#conversiones ⇒ Object (readonly)
11 12 13 |
# File 'lib/dietaDia.rb', line 11 def conversiones @conversiones end |
#desayuno(options = {}) ⇒ Object (readonly)
Añade un desayuno
76 77 78 |
# File 'lib/dietaDia.rb', line 76 def desayuno @desayuno end |
#nombre ⇒ Object (readonly)
11 12 13 |
# File 'lib/dietaDia.rb', line 11 def nombre @nombre end |
Instance Method Details
#<=>(other) ⇒ -1, ...
Metodo para comparar dos dietas
53 54 55 |
# File 'lib/dietaDia.rb', line 53 def <=>(other) kcal <=> other.kcal end |
#is_enough(persona, cantidad) ⇒ Boolean
metodo que calcula si una dieta es suficiente para un individuo dado
45 46 47 48 |
# 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 ⇒ Number
metodo que calcula el coste calorico de una dieta diaria
36 37 38 |
# File 'lib/dietaDia.rb', line 36 def kcal @desayuno.kcal + @almuerzo.kcal + @cena.kcal end |
#to_s ⇒ String
Convierte el objeto en un String
59 60 61 62 63 64 65 66 67 68 69 70 71 72 |
# 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 |