Class: Dieta
Overview
clase principal de la jerarquía
Direct Known Subclasses
Instance Attribute Summary collapse
-
#grasas ⇒ Object
readonly
attr.
-
#hidratos ⇒ Object
readonly
attr.
-
#nplatos ⇒ Object
readonly
attr.
-
#platos ⇒ Object
readonly
attr.
-
#porcentaje_ingesta ⇒ Object
readonly
attr.
-
#proteinas ⇒ Object
readonly
attr.
-
#titulo ⇒ Object
readonly
attr.
-
#VCT ⇒ Object
readonly
attr.
Instance Method Summary collapse
-
#<=>(other) ⇒ Object
invalidación del <=> para hacer los objetos comparables.
-
#initialize(titulo, porcentaje_ingesta, nplatos, vct, proteinas, grasas, hidratos, *des_platos) ⇒ Dieta
constructor
constructor.
-
#plato(n) ⇒ Object
acceso a un plato en concreto.
-
#to_s ⇒ Object
formateo a string.
Constructor Details
#initialize(titulo, porcentaje_ingesta, nplatos, vct, proteinas, grasas, hidratos, *des_platos) ⇒ Dieta
constructor
13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
# File 'lib/prct06/Dieta.rb', line 13 def initialize (titulo, porcentaje_ingesta, nplatos, vct, proteinas, grasas, hidratos, *des_platos) @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 |
Instance Attribute Details
#grasas ⇒ Object (readonly)
attr
10 11 12 |
# File 'lib/prct06/Dieta.rb', line 10 def grasas @grasas end |
#hidratos ⇒ Object (readonly)
attr
10 11 12 |
# File 'lib/prct06/Dieta.rb', line 10 def hidratos @hidratos end |
#nplatos ⇒ Object (readonly)
attr
10 11 12 |
# File 'lib/prct06/Dieta.rb', line 10 def nplatos @nplatos end |
#platos ⇒ Object (readonly)
attr
10 11 12 |
# File 'lib/prct06/Dieta.rb', line 10 def platos @platos end |
#porcentaje_ingesta ⇒ Object (readonly)
attr
10 11 12 |
# File 'lib/prct06/Dieta.rb', line 10 def porcentaje_ingesta @porcentaje_ingesta end |
#proteinas ⇒ Object (readonly)
attr
10 11 12 |
# File 'lib/prct06/Dieta.rb', line 10 def proteinas @proteinas end |
#titulo ⇒ Object (readonly)
attr
10 11 12 |
# File 'lib/prct06/Dieta.rb', line 10 def titulo @titulo end |
#VCT ⇒ Object (readonly)
attr
10 11 12 |
# File 'lib/prct06/Dieta.rb', line 10 def VCT @VCT end |
Instance Method Details
#<=>(other) ⇒ Object
invalidación del <=> para hacer los objetos comparables
39 40 41 42 |
# File 'lib/prct06/Dieta.rb', line 39 def <=> (other) return nil unless other.is_a?Dieta self.VCT <=> other.VCT end |
#plato(n) ⇒ Object
acceso a un plato en concreto
31 32 33 34 35 36 |
# File 'lib/prct06/Dieta.rb', line 31 def plato (n) if n > @nplatos || n < 1 then return "" end return @platos[n-1] end |
#to_s ⇒ Object
formateo a string
45 46 47 48 49 50 51 52 53 54 |
# File 'lib/prct06/Dieta.rb', line 45 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}\n\n" end |