class Dieta
Clase dieta base. Almacena un menú, indicando aspectos, tales como, porcentaje de ingesta, VCT
, proteínas, grasas, hidratos y los platos
Attributes
VCT[R]
grasas[R]
hidratos[R]
platos[R]
porcentaje_ingesta[R]
proteinas[R]
titulo[R]
Public Class Methods
new(titulo=0, porcentaje_ingesta=0, nplatos=0, vct=0, proteinas=0, grasas=0, hidratos=0, *des_platos) { |self| ... }
click to toggle source
constructor
# File lib/prct06/Dieta.rb, line 9 def initialize (titulo=0, porcentaje_ingesta=0, nplatos=0, vct=0, proteinas=0, grasas=0, hidratos=0, *des_platos, &block) @name = titulo @platos = [] if block_given? if block.arity == 1 yield self else instance_eval(&block) end else @titulo = titulo @porcentaje_ingesta = porcentaje_ingesta @nplatos = nplatos @platos = [] for i in 0..nplatos-1 do aux = [des_platos[i][0], des_platos[i][1], des_platos[i][2]] @platos.push(aux) end @VCT = vct @proteinas = proteinas @grasas = grasas @hidratos = hidratos end end
Public Instance Methods
<=>(other)
click to toggle source
# File lib/prct06/Dieta.rb, line 67 def <=> (other) @VCT <=> other.VCT end
ingesta(options = {})
click to toggle source
# File lib/prct06/Dieta.rb, line 45 def ingesta(options = {}) @porcentaje_ingesta = "#{options[:min]}-#{options[:max]}" end
nplatos()
click to toggle source
# File lib/prct06/Dieta.rb, line 62 def nplatos @platos.length end
plate(options = {})
click to toggle source
# File lib/prct06/Dieta.rb, line 51 def plate(options = {}) @platos << ["#{options[:descripcion]}", "#{options[:porcion]}", options[:gramos]] end
plato(n)
click to toggle source
# File lib/prct06/Dieta.rb, line 71 def plato (n) if n > @platos.length || n < 1 then return "" end return @platos[n-1] end
porcentajes(options = {})
click to toggle source
# File lib/prct06/Dieta.rb, line 55 def porcentajes(options = {}) @VCT = options[:vct] if options[:vct] @proteinas = options[:proteinas] if options[:proteinas] @grasas = options[:grasas] if options[:grasas] @hidratos = options[:hidratos] if options[:hidratos] end
title(name)
click to toggle source
# File lib/prct06/Dieta.rb, line 39 def title(name) @titulo = name end
to_s()
click to toggle source
Muestra el menú correctamente formateado
# File lib/prct06/Dieta.rb, line 79 def to_s x = "" x << "#{@titulo} (#{@porcentaje_ingesta}%)\n" @platos.each do |i| x << "- #{i[0]}, #{i[1]}, #{i[2]}g\n" end x << "V.C.T | % #{@VCT} kcal | #{@proteinas} #{@grasas} #{@hidratos}" end