class Alimento
@author Miguel Jiménez Gomis Esta clase representa a un alimento
Attributes
glucidos[R]
Permite la lectura de estas variables
indexglucosa[R]
Permite la lectura de estas variables
lipidos[R]
Permite la lectura de estas variables
nombre[R]
Permite la lectura de estas variables
proteinas[R]
Permite la lectura de estas variables
Public Class Methods
new(nombre, p, g, l)
click to toggle source
# File lib/nutrientes/alimento.rb, line 10 def initialize(nombre, p, g, l) @nombre = nombre @proteinas = p @glucidos = g @lipidos = l @indexglucosa = nil end
Public Instance Methods
<=>(anOther)
click to toggle source
Operador <=> para el modulo Comparable
@param anOther [Alimento] Otro objeto de tipo alimento @return [bool] -1 menor, 0 igual, 1 mayor.
# File lib/nutrientes/alimento.rb, line 71 def <=>(anOther) return self.v_energetico <=> anOther.v_energetico end
calculate_index(data, glucosa)
click to toggle source
Calcula el indice glucemico de un alimento
@param data [Array] Vector con los datos glucemicos de los alimentos @param glucosa [Array] Vector con los datos de la gluco
# File lib/nutrientes/alimento.rb, line 22 def calculate_index(data, glucosa) aibc = [] aibc_gluc = [] data.each do |x| t = 0 x.each_index do |a| if (a != 0) t += (((x[a] - x[0]) + (x[a - 1] - x[0])) /2)*5 end end aibc << t end glucosa.each do |x| t = 0 x.each_index do |a| if (a != 0) t += (((x[a] - x[0]) + (x[a - 1] - x[0])) /2)*5 end end aibc_gluc << t end #aibc.each{|x| x = x/48} #aibc_gluc.each{|x| x = x/48} igind = [] aibc.each_index { |x| igind << ((aibc[x] / aibc_gluc[x]) * 100)} #suma = 0 #igind.each{ |x| suma += x} #@indexglucosa = (suma / igind.length) @indexglucosa = igind.sum / igind.length #@indexglucosa = igind.reduce('+') / igind.length version 2.3.0 de ruby end
to_s()
click to toggle source
Converts the object into a string
# File lib/nutrientes/alimento.rb, line 57 def to_s() return "Nombre: #{@nombre}, Proteinas: #{@proteinas}gr, GlĂșcidos: #{@glucidos}gr, Lipidos: #{@lipidos}gr, Valor energetico = #{v_energetico()}" end
v_energetico()
click to toggle source
Este metodo calcula el valor energetico de un alimento @return [Integer] El calculo del valor energetico.
# File lib/nutrientes/alimento.rb, line 63 def v_energetico() return (@proteinas * 4 + @glucidos * 4 + @lipidos * 9) end