Class: Nutricion
- Inherits:
-
Object
- Object
- Nutricion
- Includes:
- Comparable
- Defined in:
- lib/InforNutricional/CodeInforNutricional.rb
Overview
Clase que calcula la información nutricional de una etiqueta
Instance Attribute Summary collapse
-
#almidon ⇒ Object
readonly
Returns the value of attribute almidon.
-
#azucares ⇒ Object
readonly
Returns the value of attribute azucares.
-
#fibra ⇒ Object
readonly
Returns the value of attribute fibra.
-
#grasas ⇒ Object
readonly
Returns the value of attribute grasas.
-
#hidratos ⇒ Object
readonly
Returns the value of attribute hidratos.
-
#kcal ⇒ Object
readonly
Returns the value of attribute kcal.
-
#kj ⇒ Object
readonly
Returns the value of attribute kj.
-
#minerales ⇒ Object
readonly
Returns the value of attribute minerales.
-
#monoinsaturadas ⇒ Object
readonly
Returns the value of attribute monoinsaturadas.
-
#nombre_alimento ⇒ Object
readonly
Returns the value of attribute nombre_alimento.
-
#polialcoholes ⇒ Object
readonly
Returns the value of attribute polialcoholes.
-
#polinsaturadas ⇒ Object
readonly
Returns the value of attribute polinsaturadas.
-
#proteinas ⇒ Object
readonly
Returns the value of attribute proteinas.
-
#sal ⇒ Object
readonly
Returns the value of attribute sal.
-
#saturadas ⇒ Object
readonly
Returns the value of attribute saturadas.
-
#vitaminas ⇒ Object
readonly
Returns the value of attribute vitaminas.
Instance Method Summary collapse
-
#<=>(other) ⇒ Object
Método para comparar dos objetos.
-
#calculo_almidon ⇒ Object
Método para calcular kcal y kj del almidón.
-
#calculo_azucares ⇒ Object
Método para calcular kcal y kj de los azúcares.
-
#calculo_fibra ⇒ Object
Método para calcular kcal y kj de la fibra.
-
#calculo_grasas ⇒ Object
Método para calcular las grasas totales.
-
#calculo_hidratos ⇒ Object
Método para calcular los hidratos totales.
-
#calculo_ir ⇒ Object
Método para calcular la ingesta recomendada.
-
#calculo_kcal ⇒ Object
Método para calcular kcal totales del alimento.
-
#calculo_kj ⇒ Object
Método para calcular kj totales del alimento.
-
#calculo_monoinsaturadas ⇒ Object
Método para calcular kcal y kj de las grasas monoinsaturadas.
-
#calculo_polialcoholes ⇒ Object
Método para calcular kcal y kj de los polialcoholes.
-
#calculo_polinsaturadas ⇒ Object
Método para calcular kcal y kj de las grasas polinsaturadas.
-
#calculo_proteinas ⇒ Object
Método para calcular kcal y kj de las proteínas.
-
#calculo_sal ⇒ Object
Método para calcular kcal y kj de la sal.
-
#calculo_saturadas ⇒ Object
Método para calcular kcal y kj de las grasas saturadas.
-
#initialize(nombre_alimento, saturadas, monoinsaturadas, polinsaturadas, azucares, polialcoholes, almidon, fibra, proteinas, sal, vitaminas, minerales) ⇒ Nutricion
constructor
Método initialize de la clase.
-
#to_s ⇒ Object
Método para mostrar los datos del alimento.
Constructor Details
#initialize(nombre_alimento, saturadas, monoinsaturadas, polinsaturadas, azucares, polialcoholes, almidon, fibra, proteinas, sal, vitaminas, minerales) ⇒ Nutricion
Método initialize de la clase.
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 |
# File 'lib/InforNutricional/CodeInforNutricional.rb', line 9 def initialize(nombre_alimento, saturadas, monoinsaturadas, polinsaturadas, azucares, polialcoholes, almidon, fibra, proteinas, sal, vitaminas, minerales) # Variables de instancia @nombre_alimento = nombre_alimento @saturadas = saturadas @monoinsaturadas = monoinsaturadas @polinsaturadas = polinsaturadas @azucares = azucares @polialcoholes = polialcoholes @almidon = almidon @fibra = fibra @proteinas = proteinas @sal = sal @vitaminas = vitaminas @minerales = minerales #Métodos calculo_grasas() calculo_hidratos() calculo_almidon() calculo_azucares() calculo_fibra() calculo_monoinsaturadas() calculo_polialcoholes() calculo_polinsaturadas() calculo_proteinas() calculo_sal() calculo_saturadas() calculo_kj() calculo_kcal() calculo_ir() to_s() end |
Instance Attribute Details
#almidon ⇒ Object (readonly)
Returns the value of attribute almidon
4 5 6 |
# File 'lib/InforNutricional/CodeInforNutricional.rb', line 4 def almidon @almidon end |
#azucares ⇒ Object (readonly)
Returns the value of attribute azucares
4 5 6 |
# File 'lib/InforNutricional/CodeInforNutricional.rb', line 4 def azucares @azucares end |
#fibra ⇒ Object (readonly)
Returns the value of attribute fibra
4 5 6 |
# File 'lib/InforNutricional/CodeInforNutricional.rb', line 4 def fibra @fibra end |
#grasas ⇒ Object (readonly)
Returns the value of attribute grasas
4 5 6 |
# File 'lib/InforNutricional/CodeInforNutricional.rb', line 4 def grasas @grasas end |
#hidratos ⇒ Object (readonly)
Returns the value of attribute hidratos
4 5 6 |
# File 'lib/InforNutricional/CodeInforNutricional.rb', line 4 def hidratos @hidratos end |
#kcal ⇒ Object (readonly)
Returns the value of attribute kcal
4 5 6 |
# File 'lib/InforNutricional/CodeInforNutricional.rb', line 4 def kcal @kcal end |
#kj ⇒ Object (readonly)
Returns the value of attribute kj
4 5 6 |
# File 'lib/InforNutricional/CodeInforNutricional.rb', line 4 def kj @kj end |
#minerales ⇒ Object (readonly)
Returns the value of attribute minerales
4 5 6 |
# File 'lib/InforNutricional/CodeInforNutricional.rb', line 4 def minerales @minerales end |
#monoinsaturadas ⇒ Object (readonly)
Returns the value of attribute monoinsaturadas
4 5 6 |
# File 'lib/InforNutricional/CodeInforNutricional.rb', line 4 def monoinsaturadas @monoinsaturadas end |
#nombre_alimento ⇒ Object (readonly)
Returns the value of attribute nombre_alimento
4 5 6 |
# File 'lib/InforNutricional/CodeInforNutricional.rb', line 4 def nombre_alimento @nombre_alimento end |
#polialcoholes ⇒ Object (readonly)
Returns the value of attribute polialcoholes
4 5 6 |
# File 'lib/InforNutricional/CodeInforNutricional.rb', line 4 def polialcoholes @polialcoholes end |
#polinsaturadas ⇒ Object (readonly)
Returns the value of attribute polinsaturadas
4 5 6 |
# File 'lib/InforNutricional/CodeInforNutricional.rb', line 4 def polinsaturadas @polinsaturadas end |
#proteinas ⇒ Object (readonly)
Returns the value of attribute proteinas
4 5 6 |
# File 'lib/InforNutricional/CodeInforNutricional.rb', line 4 def proteinas @proteinas end |
#sal ⇒ Object (readonly)
Returns the value of attribute sal
4 5 6 |
# File 'lib/InforNutricional/CodeInforNutricional.rb', line 4 def sal @sal end |
#saturadas ⇒ Object (readonly)
Returns the value of attribute saturadas
4 5 6 |
# File 'lib/InforNutricional/CodeInforNutricional.rb', line 4 def saturadas @saturadas end |
#vitaminas ⇒ Object (readonly)
Returns the value of attribute vitaminas
4 5 6 |
# File 'lib/InforNutricional/CodeInforNutricional.rb', line 4 def vitaminas @vitaminas end |
Instance Method Details
#<=>(other) ⇒ Object
Método para comparar dos objetos
51 52 53 54 |
# File 'lib/InforNutricional/CodeInforNutricional.rb', line 51 def <=>(other) return nil unless other.instance_of?Nutricion @kcal <=> other.kcal end |
#calculo_almidon ⇒ Object
Método para calcular kcal y kj del almidón.
99 100 101 102 |
# File 'lib/InforNutricional/CodeInforNutricional.rb', line 99 def calculo_almidon() @kcal_almidon = @almidon * 4 @kj_almidon = @almidon * 17 end |
#calculo_azucares ⇒ Object
Método para calcular kcal y kj de los azúcares
87 88 89 90 |
# File 'lib/InforNutricional/CodeInforNutricional.rb', line 87 def calculo_azucares() @kcal_azucares = @azucares*4 @kj_azucares = @azucares*17 end |
#calculo_fibra ⇒ Object
Método para calcular kcal y kj de la fibra.
105 106 107 108 |
# File 'lib/InforNutricional/CodeInforNutricional.rb', line 105 def calculo_fibra() @kcal_fibra = @fibra*2 @kj_fibra = @fibra*8 end |
#calculo_grasas ⇒ Object
Método para calcular las grasas totales.
57 58 59 60 |
# File 'lib/InforNutricional/CodeInforNutricional.rb', line 57 def calculo_grasas() @grasas = @saturadas + @monoinsaturadas + @polinsaturadas @grasas = @grasas.round(2) end |
#calculo_hidratos ⇒ Object
Método para calcular los hidratos totales.
63 64 65 66 |
# File 'lib/InforNutricional/CodeInforNutricional.rb', line 63 def calculo_hidratos() @hidratos = @azucares + @polialcoholes + @almidon @hidratos = @hidratos.round(2) end |
#calculo_ir ⇒ Object
Método para calcular la ingesta recomendada.
137 138 139 140 141 142 143 144 145 146 147 148 |
# File 'lib/InforNutricional/CodeInforNutricional.rb', line 137 def calculo_ir() @ir_kj = ( (@kj*100)/8400 ).round(2) @ir_kcal = ( (@kcal*100)/2000 ).round(2) @ir_grasas = ( (@grasas*100)/70 ).round(2) @ir_saturadas = ( (@saturadas*100)/20 ).round(2) @ir_hidratos = ( (@hidratos*100)/260 ).round(2) @ir_azucares = ( (@azucares*100)/90 ).round(2) @ir_proteinas = ( (@proteinas*100)/50 ).round(2) @ir_sal = ( (@sal*100)/6 ).round(2) #vr_minerales? #vr_vitaminas? end |
#calculo_kcal ⇒ Object
Método para calcular kcal totales del alimento.
131 132 133 134 |
# File 'lib/InforNutricional/CodeInforNutricional.rb', line 131 def calculo_kcal() @kcal = @kcal_almidon + @kcal_azucares + @kcal_fibra + @kcal_sal + @kcal_monoinsaturadas + @kcal_polialcoholes + @kcal_polinsaturadas + @kcal_proteinas + @kcal_saturadas @kcal = @kcal.round(2) end |
#calculo_kj ⇒ Object
Método para calcular kj totales del alimento.
124 125 126 127 128 |
# File 'lib/InforNutricional/CodeInforNutricional.rb', line 124 def calculo_kj() @kj = @kj_almidon + @kj_azucares + @kj_fibra + @kj_sal + @kj_monoinsaturadas + @kj_polialcoholes + @kj_polinsaturadas + @kj_proteinas + @kj_saturadas @kj = @kj.round(2) end |
#calculo_monoinsaturadas ⇒ Object
Método para calcular kcal y kj de las grasas monoinsaturadas.
75 76 77 78 |
# File 'lib/InforNutricional/CodeInforNutricional.rb', line 75 def calculo_monoinsaturadas() @kcal_monoinsaturadas = @monoinsaturadas*9 @kj_monoinsaturadas = @monoinsaturadas*37 end |
#calculo_polialcoholes ⇒ Object
Método para calcular kcal y kj de los polialcoholes.
93 94 95 96 |
# File 'lib/InforNutricional/CodeInforNutricional.rb', line 93 def calculo_polialcoholes() @kcal_polialcoholes = @polialcoholes * 2.4 @kj_polialcoholes = @polialcoholes * 10 end |
#calculo_polinsaturadas ⇒ Object
Método para calcular kcal y kj de las grasas polinsaturadas.
81 82 83 84 |
# File 'lib/InforNutricional/CodeInforNutricional.rb', line 81 def calculo_polinsaturadas() @kcal_polinsaturadas = @polinsaturadas*9 @kj_polinsaturadas = @polinsaturadas*37 end |
#calculo_proteinas ⇒ Object
Método para calcular kcal y kj de las proteínas.
111 112 113 114 |
# File 'lib/InforNutricional/CodeInforNutricional.rb', line 111 def calculo_proteinas() @kcal_proteinas = @proteinas*4 @kj_proteinas = @proteinas*17 end |
#calculo_sal ⇒ Object
Método para calcular kcal y kj de la sal.
117 118 119 120 |
# File 'lib/InforNutricional/CodeInforNutricional.rb', line 117 def calculo_sal() @kcal_sal = @sal*6 @kj_sal = @sal*25 end |
#calculo_saturadas ⇒ Object
Método para calcular kcal y kj de las grasas saturadas.
69 70 71 72 |
# File 'lib/InforNutricional/CodeInforNutricional.rb', line 69 def calculo_saturadas() @kcal_saturadas = @saturadas*9 @kj_saturadas = @saturadas*37 end |
#to_s ⇒ Object
Método para mostrar los datos del alimento.
151 152 153 154 |
# File 'lib/InforNutricional/CodeInforNutricional.rb', line 151 def to_s() "El alimento es #{@nombre_alimento}. \nValor energético: #{@kcal} kcal /#{@kj} kj | % INGESTA RECOMENDADA: #{@ir_kcal}% / #{@ir_kj}% \nGrasas: #{@grasas} | % INGESTA RECOMENDADA: #{@ir_grasas}%, de las cuales: \n Saturadas: #{@saturadas} gramos. | % INGESTA RECOMENDADA: #{@ir_saturadas}% \n Monoinsaturadas: #{@monoinsaturadas} gramos. \n Polinsaturadas: #{@polinsaturadas} gramos. \nHidratos de carbono: #{@hidratos} gramos. | % INGESTA RECOMENDADA: #{@ir_hidratos}%, de los cuales: \n Azucares: #{@azucares} gramos. | % INGESTA RECOMENDADA: #{@ir_azucares}% \n Polialcoholes: #{@polialcoholes} gramos. \n Almidon: #{@almidon} gramos.n \nFibra alimentaria: #{@fibra} gramos. \nProteinas: #{@proteinas} gramos. | % INGESTA RECOMENDADA: #{@ir_proteinas}% \nSal: #{@sal} gramos | % INGESTA RECOMENDADA: #{@ir_sal}% \nVitaminas: #{@vitaminas} miligramos. \nMinerales: #{@minerales} miligramos." end |