Class: Menu
- Inherits:
-
Object
- Object
- Menu
- Defined in:
- lib/dieta/menu.rb
Overview
Clase que implementa un menú dietético.
Direct Known Subclasses
Instance Attribute Summary collapse
-
#platos ⇒ array
readonly
Array con los diferentes platos del menú con los elementos descripción, porciones e ingesta.
-
#porcentaje ⇒ array
readonly
Array con el rango de porcentajes de ingesta diaria.
-
#porcentaje_pgh ⇒ array
readonly
Array con los valores para los porcentajes de proteínas, grasas e hidratos respectivamente.
-
#titulo ⇒ char
readonly
Título para el menú (ej. desayuno, almuerzo, etc.).
-
#vct ⇒ char
readonly
Cadena que almacena el valor calórico total.
Instance Method Summary collapse
-
#<=>(nuevo) ⇒ bool
Método que los menús sean comparables, indica que se debe comparar el valor calórico total.
-
#get_ingesta ⇒ array
Método para obtener el porcentaje de ingesta.
-
#get_pgh ⇒ array
Método para obtener el array de porcentajes de proteínas grasas e hidratos.
-
#get_platos(i, j) ⇒ array_possition
Método para obtener un elemento de un plato.
-
#get_titulo ⇒ char
Método para obtener el titulo.
-
#get_vct ⇒ char
Método para obtener el valor calórico total.
-
#initialize(titulo, porcentaje, platos, vct, porcentaje_pgh) ⇒ Menu
constructor
Método que inicializa el menú almacenando los datos necesatios.
-
#to_s ⇒ char
Método para mostrar en el formato especificado.
Constructor Details
#initialize(titulo, porcentaje, platos, vct, porcentaje_pgh) ⇒ Menu
Método que inicializa el menú almacenando los datos necesatios.
21 22 23 |
# File 'lib/dieta/menu.rb', line 21 def initialize(titulo, porcentaje, platos, vct, porcentaje_pgh) @titulo, @porcentaje, @platos, @vct, @porcentaje_pgh= titulo, porcentaje, platos, vct, porcentaje_pgh end |
Instance Attribute Details
#platos ⇒ array (readonly)
Array con los diferentes platos del menú con los elementos descripción, porciones e ingesta
11 12 13 |
# File 'lib/dieta/menu.rb', line 11 def platos @platos end |
#porcentaje ⇒ array (readonly)
Array con el rango de porcentajes de ingesta diaria
11 12 13 |
# File 'lib/dieta/menu.rb', line 11 def porcentaje @porcentaje end |
#porcentaje_pgh ⇒ array (readonly)
Array con los valores para los porcentajes de proteínas, grasas e hidratos respectivamente
11 12 13 |
# File 'lib/dieta/menu.rb', line 11 def porcentaje_pgh @porcentaje_pgh end |
#titulo ⇒ char (readonly)
Título para el menú (ej. desayuno, almuerzo, etc.)
11 12 13 |
# File 'lib/dieta/menu.rb', line 11 def titulo @titulo end |
#vct ⇒ char (readonly)
Cadena que almacena el valor calórico total
11 12 13 |
# File 'lib/dieta/menu.rb', line 11 def vct @vct end |
Instance Method Details
#<=>(nuevo) ⇒ bool
Método que los menús sean comparables, indica que se debe comparar el valor calórico total.
81 82 83 |
# File 'lib/dieta/menu.rb', line 81 def <=>(nuevo) @vct<=>nuevo.vct end |
#get_ingesta ⇒ array
Método para obtener el porcentaje de ingesta.
41 42 43 |
# File 'lib/dieta/menu.rb', line 41 def get_ingesta() @porcentaje end |
#get_pgh ⇒ array
Método para obtener el array de porcentajes de proteínas grasas e hidratos.
53 54 55 |
# File 'lib/dieta/menu.rb', line 53 def get_pgh() @porcentaje_pgh end |
#get_platos(i, j) ⇒ array_possition
Método para obtener un elemento de un plato.
35 36 37 |
# File 'lib/dieta/menu.rb', line 35 def get_platos(i,j) @platos[i][j] end |
#get_titulo ⇒ char
Método para obtener el titulo.
27 28 29 |
# File 'lib/dieta/menu.rb', line 27 def get_titulo() @titulo end |
#get_vct ⇒ char
Método para obtener el valor calórico total.
47 48 49 |
# File 'lib/dieta/menu.rb', line 47 def get_vct() @vct end |
#to_s ⇒ char
Método para mostrar en el formato especificado.
59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 |
# File 'lib/dieta/menu.rb', line 59 def to_s() x = "" x << "#{@titulo}" if porcentaje.size == 2 x << " (#{@porcentaje[0]} - #{@porcentaje[1]}%)\n" else x << " (#{@porcentaje[0]}%)\n" end i=0 while (i<platos.length()) x << "- #{@platos[i][0]}, #{@platos[i][1]}, #{@platos[i][2]} g\n" i+=1 end x << "V.C.T. | % #{@vct} | #{@porcentaje_pgh[0]}% - #{@porcentaje_pgh[1]}% - #{@porcentaje_pgh[2]}%\n" x end |