class Plato
Public Class Methods
new(name, list) { |self| ... }
click to toggle source
# File lib/Alimento/alimento.rb, line 83 def initialize(name, list, &block) @nombre = name @lista_alimentos = list @vegetal = [] @fruta = [] @cereal = [] @proteina = [] @aceite = [] @valor_energetico = 0 if block_given? if block.arity == 1 yield self else instance_eval(&block) end end end
Public Instance Methods
aceite(name, options = {})
click to toggle source
# File lib/Alimento/alimento.rb, line 175 def aceite(name, options = {}) cantidad = 0 alimento = @lista_alimentos.find { |x| name == x[:value].nombre_to_s } if options[:gramos] cantidad = options[:gramos] else porcion = options[:porcion].split(" ", 2) cantidad = @@medidas[porcion[1]] cantidad = cantidad * porcion[0].to_r.to_f end @valor_energetico += cantidad * alimento[:value].valor_energetico() @aceite.push([alimento, (cantidad * alimento[:value].valor_energetico).round(2)]) end
cereal(name, options = {})
click to toggle source
# File lib/Alimento/alimento.rb, line 145 def cereal(name, options = {}) cantidad = 0 alimento = @lista_alimentos.find { |x| name == x[:value].nombre_to_s } if options[:gramos] cantidad = options[:gramos] else porcion = options[:porcion].split(" ", 2) cantidad = @@medidas[porcion[1]] cantidad = cantidad * porcion[0].to_r.to_f end @valor_energetico += cantidad * alimento[:value].valor_energetico() @cereal.push([alimento, (cantidad * alimento[:value].valor_energetico).round(2)]) end
fruta(name, options = {})
click to toggle source
# File lib/Alimento/alimento.rb, line 130 def fruta(name, options = {}) cantidad = 0 alimento = @lista_alimentos.find { |x| name == x[:value].nombre_to_s } if options[:gramos] cantidad = options[:gramos] else porcion = options[:porcion].split(" ", 2) cantidad = @@medidas[porcion[1]] cantidad = cantidad * porcion[0].to_r.to_f end @valor_energetico += cantidad * alimento[:value].valor_energetico() @fruta.push([alimento, (cantidad * alimento[:value].valor_energetico).round(2)]) end
proteina(name, options = {})
click to toggle source
# File lib/Alimento/alimento.rb, line 160 def proteina(name, options = {}) cantidad = 0 alimento = @lista_alimentos.find { |x| name == x[:value].nombre_to_s } if options[:gramos] cantidad = options[:gramos] else porcion = options[:porcion].split(" ", 2) cantidad = @@medidas[porcion[1]] cantidad = cantidad * porcion[0].to_r.to_f end @valor_energetico += cantidad * alimento[:value].valor_energetico() @proteina.push([alimento, (cantidad * alimento[:value].valor_energetico).round(2)]) end
to_s()
click to toggle source
# File lib/Alimento/alimento.rb, line 102 def to_s puts"#{@nombre}" puts"=================================================================" puts"Composicion nutricional:" puts"\t\t\tglucidos\tproteınas\tlıpidos\t\tvalor energetico" @vegetal.map { |e| printf"#{e[0][:value].informacion_to_s}#{e[1]}\n"} @fruta.map { |e| printf"#{e[0][:value].informacion_to_s}#{e[1]}\n"} @cereal.map { |e| printf"#{e[0][:value].informacion_to_s}#{e[1]}\n"} @proteina.map { |e| printf"#{e[0][:value].informacion_to_s}#{e[1]}\n"} @aceite.map { |e| printf"#{e[0][:value].informacion_to_s}#{e[1]}\n"} puts"Valor energetico total %66s" % @valor_energetico end
vegetal(name, options = {})
click to toggle source
# File lib/Alimento/alimento.rb, line 115 def vegetal(name, options = {}) cantidad = 0 alimento = @lista_alimentos.find { |x| name == x[:value].nombre_to_s } if options[:gramos] cantidad = options[:gramos] else porcion = options[:porcion].split(" ", 2) cantidad = @@medidas[porcion[1]] cantidad = cantidad * porcion[0].to_r.to_f end @valor_energetico += cantidad * alimento[:value].valor_energetico() @vegetal.push([alimento, (cantidad * alimento[:value].valor_energetico).round(2)]) end