Class: Pacientes
Instance Attribute Summary collapse
-
#actividad_fisica ⇒ Object
readonly
Returns the value of attribute actividad_fisica.
-
#datos ⇒ Object
readonly
Returns the value of attribute datos.
Attributes inherited from Individuo
Instance Method Summary collapse
- #<=>(other) ⇒ Object
- #==(other) ⇒ Object
-
#efecto_termogeno ⇒ Object
Parameters: No recibe ninguno.
-
#gasto_actividad_fisica ⇒ Object
Parameters: No recibe ninguno.
-
#gasto_energetico_basal ⇒ Object
Define el metodo para calcular el gasto_energetico_basal.
-
#gasto_energetico_total ⇒ Object
Define el metodo para calcular el gasto_energetico_total.
-
#indice_corporal ⇒ Object
Comprueba entre que valores esta el icm de un pacuente y determina su estado corporal.
-
#initialize(nombre, datos, actividad_fisica) ⇒ Pacientes
constructor
A new instance of Pacientes.
-
#peso_teorico_ideal ⇒ Object
Define el metodo para calcular el peso teorico ideal.
-
#to_s ⇒ Object
Define el metodo para imprimir por pantalla .
Methods inherited from Individuo
Constructor Details
#initialize(nombre, datos, actividad_fisica) ⇒ Pacientes
Returns a new instance of Pacientes.
52 53 54 55 56 |
# File 'lib/Individuo.rb', line 52 def initialize(nombre,datos, actividad_fisica) super(nombre) @datos = datos #datos antropometricos @actividad_fisica = actividad_fisica end |
Instance Attribute Details
#actividad_fisica ⇒ Object (readonly)
Returns the value of attribute actividad_fisica.
50 51 52 |
# File 'lib/Individuo.rb', line 50 def actividad_fisica @actividad_fisica end |
#datos ⇒ Object (readonly)
Returns the value of attribute datos.
50 51 52 |
# File 'lib/Individuo.rb', line 50 def datos @datos end |
Instance Method Details
#<=>(other) ⇒ Object
168 169 170 |
# File 'lib/Individuo.rb', line 168 def <=>(other) gasto_energetico_total <=> other.gasto_energetico_total end |
#==(other) ⇒ Object
58 59 60 61 62 63 64 |
# File 'lib/Individuo.rb', line 58 def ==(other) if other.is_a? Individuo nombre == other.nombre elsif false end end |
#efecto_termogeno ⇒ Object
Parameters:
No recibe ninguno
Returns:
Un float con el resultado de la operacion
128 129 130 131 132 |
# File 'lib/Individuo.rb', line 128 def efecto_termogeno gasto_energetico_basal * 0.10 end |
#gasto_actividad_fisica ⇒ Object
Parameters:
No recibe ninguno
Returns:
Un float con el resultado de la operacion
141 142 143 144 145 146 147 148 149 150 151 152 153 |
# File 'lib/Individuo.rb', line 141 def gasto_actividad_fisica if @actividad_fisica == "reposo" gasto_energetico_basal * 0.0 elsif @actividad_fisica == "ligera" gasto_energetico_basal * 0.12 elsif @actividad_fisica == "moderada" gasto_energetico_basal * 0.27 elsif @actividad_fisica == "intensa" gasto_energetico_basal * 0.54 end end |
#gasto_energetico_basal ⇒ Object
Define el metodo para calcular el gasto_energetico_basal
Parameters:
No recibe ninguno
Returns:
Un float con el resultado de la operacion
107 108 109 110 111 112 113 114 115 116 117 118 119 |
# File 'lib/Individuo.rb', line 107 def gasto_energetico_basal if @datos.sexo == 0 (10 * @datos.peso) + (6.25 * @datos.talla) - (5 * @datos.edad) - 161 elsif @datos.sexo == 1 (10 * @datos.peso) + (6.25 * @datos.talla) - (5 * @datos.edad) + 5 end end |
#gasto_energetico_total ⇒ Object
Define el metodo para calcular el gasto_energetico_total
Parameters:
No recibe ninguno
Returns:
Un float con el resultado de la operacion
162 163 164 165 166 |
# File 'lib/Individuo.rb', line 162 def gasto_energetico_total gasto_energetico_basal + efecto_termogeno + gasto_actividad_fisica end |
#indice_corporal ⇒ Object
Comprueba entre que valores esta el icm de un pacuente y determina su estado corporal
Parameters:
No recibe ninguno
Returns:
Un string con el peso del paciente
73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 |
# File 'lib/Individuo.rb', line 73 def indice_corporal if @datos.indice_masa_corporal <= 18.5 "Bajo peso" elsif @datos.indice_masa_corporal > 18.5 and @datos.indice_masa_corporal <= 24.9 "Peso adecuado" elsif @datos.indice_masa_corporal > 25.0 and @datos.indice_masa_corporal <= 29.9 "Sobrepeso" elsif @datos.indice_masa_corporal > 30.0 and @datos.indice_masa_corporal <= 34.9 "Obesidad grado 1" elsif @datos.indice_masa_corporal > 35.0 and @datos.indice_masa_corporal <= 39.9 "Obesidad grado 2" elsif @datos.indice_masa_corporal > 40 "Obesidad grado 3" end end |
#peso_teorico_ideal ⇒ Object
Define el metodo para calcular el peso teorico ideal
Parameters:
No recibe ninguno
Returns:
Un float con el resultado de la operacion
96 97 98 |
# File 'lib/Individuo.rb', line 96 def peso_teorico_ideal ((@datos.talla * 100) - 150) * 0.75 + 50 end |
#to_s ⇒ Object
Define el metodo para imprimir por pantalla
Parameters:
No recibe ninguno
Returns:
Un string con el contenido de las variables
179 180 181 |
# File 'lib/Individuo.rb', line 179 def to_s "#{@datos.indice_masa_corporal}" end |