class Object

Constants

Nodo

Public Instance Methods

ig_func(vpruebas,vglucosas) click to toggle source
# File lib/alimento/IG_fun.rb, line 1
def ig_func (vpruebas,vglucosas)
        a=vpruebas.collect do 
                |pruebas| pruebas.collect do 
                        |prueba| (prueba-pruebas[0])*5-(pruebas[pruebas.length-1]-pruebas[0])*5/(2*pruebas.length)
                end.reduce('+')
        end #Array con los AIBC de cada prueba
        b=vglucosas.collect do 
                |glucosas| glucosas.collect do 
                        |glucosa| (glucosa-glucosas[0])*5-(glucosas[glucosas.length-1]-glucosas[0])*5/(2*glucosas.length)
                end.reduce('+')
        end #Array con los AIBC de cada glucosa
        ig=a.zip(b).collect { |v1,v2| v1*100/v2 }.reduce('+') 
        ig/=vpruebas.length #IG
        return ig
end
ord_each(valimentos) click to toggle source
# File lib/alimento/ordenar.rb, line 15
def ord_each (valimentos) #Buscar otra forma

        valimentos.each_index do
                |i| valimentos.each_index do 
                        |j| if valimentos[j].kcal<valimentos[i].kcal
                                valimentos[i],valimentos[j]=valimentos[j],valimentos[i]
                        end
                end
        end

end
ord_for(valimentos) click to toggle source
# File lib/alimento/ordenar.rb, line 1
def ord_for (valimentos)

        for i in 0...valimentos.length
                max=valimentos[i]
                for j in i...valimentos.length
                        if max.kcal < valimentos[j].kcal
                                max,valimentos[j]=valimentos[j],max
                        end
                end
                valimentos[i]=max
        end
        valimentos

end
ord_sort(valimentos) click to toggle source
# File lib/alimento/ordenar.rb, line 26
def ord_sort (valimentos)
        valimentos.sort.reverse {|x,y| y.kcal<=>x.kcal }
end