Sha256: e7b61fbb9256a573004f7c49673595a3e8133825e6500de51d31683014f4139a
Contents?: true
Size: 1.75 KB
Versions: 1
Compression:
Stored size: 1.75 KB
Contents
# Define una clase de menú dietético class Diet include Comparable attr_accessor :cabecera, :menu, :vct # Constructor, inicializa el objeto con los parámetros pasados para la Cabecera, los Platos y los Valores Calóricos y Porcentajes def initialize(cabecera,menu,vct) # Atributo que contiene la cabecera del menú @cabecera = cabecera # Atributo que contiene los platos del menú como una matriz de tantas filas como platos, y tres columnas @menu = menu # Atributo que contiene el valor calórico y los porcentajes de proteínas, grasas e hidratos de carbono del menú @vct = vct end # Muestra por pantalla la información que contiene el objeto de manera formateada def to_s s = "" s << "#{cabecera[0]} (#{cabecera[1]})\n" for i in 0..menu.length-1 s << "- #{menu[i][0]}, #{menu[i][1]}, #{menu[i][2]}\n" end s << "V.C.T. | % \t#{vct[0]} kcal | #{vct[1]} - #{vct[2]} - #{vct[3]}\n" end # Devuelve el nombre de la comida def get_cabecera @cabecera[0] end # Devuelve la ingesta def get_ingesta @cabecera[1] end # Devuelve el plato con índice pasado por parámetro (1,2,3,...) def get_plato(num) @menu[num-1] end # Devuleve el valor calórico de la comida respectiva def get_vct @vct[0] end # Devuelve el porcentaje de proteínas de la comida def get_proteinas @vct[1] end # Devuelve el porcentaje de grasa de la comida def get_grasas @vct[2] end # Devuelve el porcentaje de hidratos de carbono de la comida def get_hidratos @vct[3] end # Permite usar los operadores <,>,<=,>= para comparar objetos de la clase Diet def <=>(other) @vct[0] <=> other.vct[0] end # Permite comparar si dos objetos de la clase Diet son iguales def ==(other) @cabecera == other.cabecera @menu == other.menu @vct == other.vct end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
Gema_alu0100891485-0.1.0 | lib/dieta/diet.rb |