class Dieta::Menu

Clase que representa un menu dietético @author alu0100896282 @attr [String] titulo Título del menu (Almuerzo, Cena, …) @attr [String] porcentaje Cadena de texto que representa la ingesta diara @attr [Array[Array]] platos Conjunto de platos con sus descripciones, porción recomendada e injesta @attr [String] VCT Valor calórico total @attr [String] proteinas Porcentaje de proteínas @attr [String] grasas Porcentaje de grasas @attr [String] hidratos Porcentaje de hidratos

Attributes

VCT[RW]
grasas[RW]
hidratos[RW]
platos[RW]
porcentaje[RW]
proteinas[RW]
titulo[RW]

Public Class Methods

new(cabecera, platos, informacion) click to toggle source

Crea una instancia de la clase Menu @param [Array] cabecera Título y los porcentajes de la injesta diaria @param [Array[Array]] platos Conjunto de platos con descripción, porción e injesta recomendada @param [Array] informacion Conjunto con el VCT, porcentaje de proteinas, grasas e hidratos @return [Menu] Nueva instancia de la clase Menu

# File lib/dieta/dieta_m.rb, line 32
def initialize(cabecera, platos, informacion)

    @titulo       = cabecera[0]

    @porcentaje   = cabecera[1].to_s
    if cabecera[2]
        @porcentaje  += "-" + cabecera[2].to_s
    end
    @porcentaje  += "%"

    @platos       = platos
    @VCT          = informacion[0]
    @proteinas    = informacion[1]
    @grasas       = informacion[2]
    @hidratos     = informacion[3]

end

Public Instance Methods

<=>(anOther) click to toggle source

Establece un orden de preferencia de acuerdo al VCT @param [Menu] anOther Objeto de la clase Menu

# File lib/dieta/dieta_m.rb, line 21
def <=>(anOther)

    @VCT.to_f <=> anOther.VCT.to_f

end
get_descripcion(numero) click to toggle source

Devuelve solo la descripción de un plato @param [Number] numero Número de plato @return [String] Descripción del plato

# File lib/dieta/dieta_m.rb, line 60
def get_descripcion(numero)
    @platos[numero][0]
end
get_ingesta(numero) click to toggle source

Devuelve solo la ingesta recomendada de un plato @param [Number] numero Número de plato @return [String] Injesta recomendada del plato

# File lib/dieta/dieta_m.rb, line 74
def get_ingesta(numero)
    @platos[numero][2]
end
get_plato(numero) click to toggle source

Devuelve información sobre un plato @param [Number] numero Número de plato @return [Array] Información del plato

# File lib/dieta/dieta_m.rb, line 53
def get_plato(numero)
    @platos[numero]
end
get_porcion(numero) click to toggle source

Devuelve solo la porción recomendada de un plato @param [Number] numero Número de plato @return [String] Porción recomendada del plato

# File lib/dieta/dieta_m.rb, line 67
def get_porcion(numero)
    @platos[numero][1]
end
to_s() click to toggle source

Transforma en una cadena @return [String] Cadena con información formateada del Menu

# File lib/dieta/dieta_m.rb, line 80
def to_s

    mostrar = "#{@titulo} (#{@porcentaje})\n"

    i = 0;
    while i < @platos.length
        mostrar += "- #{@platos[i][0]}, #{platos[i][1]}, #{platos[i][2]}\n"
        i+=1
    end

    mostrar += "V.C.T. | % #{@VCT} kcal | #{@proteinas}% - #{@grasas}% - #{@hidratos}%\n"

end