Class: Dieta
Overview
Clase que contiene un menú
Instance Attribute Summary collapse
-
#cantidad ⇒ Object
Returns the value of attribute cantidad.
-
#descripcion ⇒ Object
Returns the value of attribute descripcion.
-
#grasas ⇒ Object
Returns the value of attribute grasas.
-
#hidratos ⇒ Object
Returns the value of attribute hidratos.
-
#ingesta2 ⇒ Object
Returns the value of attribute ingesta2.
-
#kcal ⇒ Object
Returns the value of attribute kcal.
-
#proteinas ⇒ Object
Returns the value of attribute proteinas.
-
#racion ⇒ Object
Returns the value of attribute racion.
-
#tipo_dieta ⇒ Object
Returns the value of attribute tipo_dieta.
Instance Method Summary collapse
-
#<=>(other) ⇒ Object
Comparacion.
- #==(other) ⇒ Object
-
#get_descripcion(pos) ⇒ Object
devuelve el nombre del plato especificado en “pos”.
-
#get_platos ⇒ Object
devuelve todos los platos que hay con sus descripciones.
-
#get_titulo ⇒ Object
devuelve el tipo de comida mas su ingesta diaria.
-
#get_to_(pos) ⇒ Object
devuelve una linea con la descripcion completa de un plato.
- #ingesta(text, options = {}) ⇒ Object
-
#initialize(&block) ⇒ Dieta
constructor
A new instance of Dieta.
- #plato(options = {}) ⇒ Object
- #porcentajes(options = {}) ⇒ Object
- #titulo(text) ⇒ Object
-
#to_s ⇒ Object
devuelve la salida con todos los datos.
Constructor Details
#initialize(&block) ⇒ Dieta
Returns a new instance of Dieta.
4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
# File 'lib/pract07/Dieta.rb', line 4 def initialize(&block) self.tipo_dieta = [] #Tipo de menu: almuerzo, desayuno... self.ingesta2 = [] self.descripcion = [] #descripcion del menu self.racion = [] #array de arrays que contienen la porcion de comida que lleva cada plato self.cantidad = [] #cantidad generalmente en gramos de comida self.kcal = [] # V.C.T del menu self.proteinas = [] #array de porcentajes que muestran: proteinas, grasas e hidratos por menu self.grasas = [] self.hidratos = [] if block_given? if block.arity == 1 yield self else instance_eval(&block) end end end |
Instance Attribute Details
#cantidad ⇒ Object
Returns the value of attribute cantidad.
3 4 5 |
# File 'lib/pract07/Dieta.rb', line 3 def cantidad @cantidad end |
#descripcion ⇒ Object
Returns the value of attribute descripcion.
3 4 5 |
# File 'lib/pract07/Dieta.rb', line 3 def descripcion @descripcion end |
#grasas ⇒ Object
Returns the value of attribute grasas.
3 4 5 |
# File 'lib/pract07/Dieta.rb', line 3 def grasas @grasas end |
#hidratos ⇒ Object
Returns the value of attribute hidratos.
3 4 5 |
# File 'lib/pract07/Dieta.rb', line 3 def hidratos @hidratos end |
#ingesta2 ⇒ Object
Returns the value of attribute ingesta2.
3 4 5 |
# File 'lib/pract07/Dieta.rb', line 3 def ingesta2 @ingesta2 end |
#kcal ⇒ Object
Returns the value of attribute kcal.
3 4 5 |
# File 'lib/pract07/Dieta.rb', line 3 def kcal @kcal end |
#proteinas ⇒ Object
Returns the value of attribute proteinas.
3 4 5 |
# File 'lib/pract07/Dieta.rb', line 3 def proteinas @proteinas end |
#racion ⇒ Object
Returns the value of attribute racion.
3 4 5 |
# File 'lib/pract07/Dieta.rb', line 3 def racion @racion end |
#tipo_dieta ⇒ Object
Returns the value of attribute tipo_dieta.
3 4 5 |
# File 'lib/pract07/Dieta.rb', line 3 def tipo_dieta @tipo_dieta end |
Instance Method Details
#<=>(other) ⇒ Object
Comparacion
123 124 125 |
# File 'lib/pract07/Dieta.rb', line 123 def <=>(other) kcal <=> other.kcal end |
#==(other) ⇒ Object
127 128 129 130 131 132 133 |
# File 'lib/pract07/Dieta.rb', line 127 def ==(other) if kcal == other.kcal && percent == other.percent return true else return false end end |
#get_descripcion(pos) ⇒ Object
devuelve el nombre del plato especificado en “pos”
72 73 74 75 |
# File 'lib/pract07/Dieta.rb', line 72 def get_descripcion(pos) #devuelve el nombre del plato especificado en "pos" s = "#{descripcion[pos]}" s #se devuelve e imprime end |
#get_platos ⇒ Object
devuelve todos los platos que hay con sus descripciones
47 48 49 50 51 52 53 54 55 56 57 58 59 60 |
# File 'lib/pract07/Dieta.rb', line 47 def get_platos #devuelve todos los platos que hay con sus descripciones i=0 s= "" while (descripcion[i] != nil && cantidad[i] != nil) do s += "- #{descripcion[i]}, " if (racion[i] != nil) s += "#{racion[i]}, " end s += "#{cantidad[i]} g" s += "\n" i += 1 end s #se devuelve e imprime end |
#get_titulo ⇒ Object
devuelve el tipo de comida mas su ingesta diaria
62 63 64 65 66 67 68 69 70 |
# File 'lib/pract07/Dieta.rb', line 62 def get_titulo #devuelve el tipo de comida mas su ingesta diaria s = "#{tipo_dieta} " if (ingesta2[1] == nil) s += "(#{ingesta2[0]}%)" else s += "(#{ingesta2[0]}% - #{ingesta2[1]}%)" end s #se devuelve e imprime end |
#get_to_(pos) ⇒ Object
devuelve una linea con la descripcion completa de un plato
77 78 79 80 81 82 83 84 |
# File 'lib/pract07/Dieta.rb', line 77 def get_to_(pos) #devuelve una linea con la descripcion completa de un plato s = "- #{descripcion[pos]}, " if (racion[pos] != nil) s += "#{racion[pos]}, " end s += "#{cantidad[pos]} g" s #se devuelve e imprime end |
#ingesta(text, options = {}) ⇒ Object
33 34 35 36 37 38 |
# File 'lib/pract07/Dieta.rb', line 33 def ingesta(text, = {}) ingesta = text ingesta << "#{[:min]}" if [:min] ingesta << "#{[:max]}" if [:max] ingesta2 << ingesta end |
#plato(options = {}) ⇒ Object
27 28 29 30 31 |
# File 'lib/pract07/Dieta.rb', line 27 def plato( = {}) descripcion << "#{[:descripcion]}" if [:descripcion] racion << "#{[:porcion]}" if [:porcion] cantidad << "#{[:gramos]}" if [:gramos] end |
#porcentajes(options = {}) ⇒ Object
40 41 42 43 44 45 |
# File 'lib/pract07/Dieta.rb', line 40 def porcentajes( = {}) kcal << "#{[:vct]}" if [:vct] proteinas << "#{[:proteinas]}" if [:proteinas] grasas << "#{[:grasas]}" if [:grasas] hidratos << "#{[:hidratos]}" if [:hidratos] end |
#titulo(text) ⇒ Object
23 24 25 |
# File 'lib/pract07/Dieta.rb', line 23 def titulo(text) self.tipo_dieta = text end |
#to_s ⇒ Object
devuelve la salida con todos los datos
86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 |
# File 'lib/pract07/Dieta.rb', line 86 def to_s #devuelve la salida con todos los datos s = "#{tipo_dieta} " if (ingesta2[1] == nil) s += "(#{ingesta2[0]}%)" else s += "(#{ingesta2[0]}% - #{ingesta2[1]}%)" end s += "\n" i = 0 while (descripcion[i] != nil && cantidad[i] != nil) do s += "- #{descripcion[i]}, " if (racion[i] != nil) s += "#{racion[i]}, " end s += "#{cantidad[i]} g" s += "\n" i += 1 end s += "V.C.T. | %" s += "\t" s += "#{kcal[0]} kcal |" if (proteinas != nil) s += " #{proteinas[0]}%" s += " -" end if (grasas != nil) s += " #{grasas[0]}%" s += " -" end if (hidratos != nil) s += " #{hidratos[0]}%" end s #se devuelve e imprime end |