class Comida

Public Class Methods

new(nombre, tiempo,concentraciones) click to toggle source

método inicializar clase

# File lib/alimentos/comida.rb, line 3
def initialize(nombre, tiempo,concentraciones)
  # atributos
  @nombre = nombre
  @concentraciones = concentraciones
  @tiempo = tiempo
end

Public Instance Methods

get_aibc() click to toggle source

método que nos devuelve el calculo del aibc del alimento

# File lib/alimentos/comida.rb, line 15
def get_aibc()
      #metodo imperativo
      #total = 0
      #for j in 1..@concentraciones.length-1
      #      aux=@concentraciones[j].to_f-@concentraciones[0].to_f
      #      aux2=@concentraciones[j-1].to_f-@concentraciones[0].to_f
      #      if aux < 0
      #              aux=0
      #      end
      #      if aux2 < 0
      #              aux2=0
      #      end
      #      aux3=aux+aux2
      #      aux3=aux3*@tiempo.to_f
      #      aux3=aux3/2
      #      total=total+aux3
      #end

      #otro metodo
      s=[]
      @concentraciones[1..@concentraciones.length-1].zip(@concentraciones[0..@concentraciones.length-2]) do |x,y|
              if x < @concentraciones[0]
                      s << 0.0
              else
                      s << (((x - @concentraciones[0])+(y-@concentraciones[0]))/2)*5
              end
      end
      #puts s.reduce(:+).round(2)
      #puts total.round(2)
      #return total.round(2)
      return s.reduce(:+).round(2)
end
get_nombre() click to toggle source
# File lib/alimentos/comida.rb, line 10
def get_nombre()
  return @nombre
end
to_s() click to toggle source

salida por pantalla de clase

# File lib/alimentos/comida.rb, line 49
def to_s
      s = "\n"
      s << "#{@nombre}\n"
      s << "\nConcentraciones: #{@concentraciones}"
      s << "\nPeriodo de Tiempo: #{@tiempo} minutos"
      s << "\n"
      s << "\nAIBC: " + get_aibc.to_s
      s
end