Class: Plato

Inherits:
Object
  • Object
show all
Defined in:
lib/pract06/plato.rb

Overview

Implementación de la clase Plato

Direct Known Subclasses

Plato_herencia

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(nombre_plato, conjunto_alimentos, cantidades_engramos, cantidades_totales_engramos) ⇒ Plato

Método initialize



8
9
10
# File 'lib/pract06/plato.rb', line 8

def initialize(nombre_plato, conjunto_alimentos, cantidades_engramos, cantidades_totales_engramos)
  @nombre_plato, @conjunto_alimentos, @cantidades_engramos, @cantidades_totales_engramos = nombre_plato, conjunto_alimentos, cantidades_engramos, cantidades_totales_engramos
end

Instance Attribute Details

#cantidades_engramosObject

Returns the value of attribute cantidades_engramos.



3
4
5
# File 'lib/pract06/plato.rb', line 3

def cantidades_engramos
  @cantidades_engramos
end

#cantidades_totales_engramosObject

Returns the value of attribute cantidades_totales_engramos.



3
4
5
# File 'lib/pract06/plato.rb', line 3

def cantidades_totales_engramos
  @cantidades_totales_engramos
end

#conjunto_alimentosObject

Returns the value of attribute conjunto_alimentos.



3
4
5
# File 'lib/pract06/plato.rb', line 3

def conjunto_alimentos
  @conjunto_alimentos
end

#nombre_platoObject

Returns the value of attribute nombre_plato.



3
4
5
# File 'lib/pract06/plato.rb', line 3

def nombre_plato
  @nombre_plato
end

Instance Method Details

#porcentaje_carbohidratosObject

Deprecated.

Sirve para hallar el porcentaje de carbohidratos de un plato

Metodo porcentaje de carbohidratos



54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
# File 'lib/pract06/plato.rb', line 54

def porcentaje_carbohidratos

  total_carbohidratos = 0
  i = 0
  while i < conjunto_alimentos.length do
    aux = conjunto_alimentos[i].carbohidratos * cantidades_engramos[i]
    total_carbohidratos += aux
    i += 1
  end

  tporcentaje_carbohidratos = 0
  tporcentaje_carbohidratos = ((total_carbohidratos/cantidades_totales_engramos)*100).round(1)
  return "#{tporcentaje_carbohidratos}%"

end

#porcentaje_lipidosObject

Deprecated.

Sirve para hallar el porcentaje de lipidos de un plato

Metodos de porcentaje de lipidos



35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
# File 'lib/pract06/plato.rb', line 35

def porcentaje_lipidos

  total_lipidos = 0
  i = 0
  while i < conjunto_alimentos.length do
    aux = conjunto_alimentos[i].lipidos * cantidades_engramos[i]
    total_lipidos += aux
    i += 1
  end

  tporcentaje_lipidos = 0
  tporcentaje_lipidos = ((total_lipidos/cantidades_totales_engramos)*100).round(1)
  return "#{tporcentaje_lipidos}%"

end

#porcentaje_proteinasObject

Deprecated.

Sirve para hallar el porcentaje total de proteinas del plato a tratar

Metodo de porcentaje_proteinas



16
17
18
19
20
21
22
23
24
25
26
27
28
29
# File 'lib/pract06/plato.rb', line 16

def porcentaje_proteinas

  total_proteinas = 0
  i = 0
  while i < conjunto_alimentos.length do
    aux = conjunto_alimentos[i].proteinas * cantidades_engramos[i]
    total_proteinas += aux
    i += 1
  end

  tporcentaje_proteinas = 0
  tporcentaje_proteinas = ((total_proteinas/cantidades_totales_engramos)*100).round(1)
  return "#{tporcentaje_proteinas}%"
end

#to_sObject

Deprecated.

Sirve para dar el plato en su forma formateada

Metodo to_s



89
90
91
92
# File 'lib/pract06/plato.rb', line 89

def to_s

  "Plato: #{@nombre_plato}, \nIngredientes: #{@conjunto_alimentos},\nCantidad total del plato: #{@cantidades_totales_engramos}, separados en las siguientes cantidades por alimento #{@cantidades_engramos}"
end

#valor_calorico_totalObject

Deprecated.

Sirve para hallar el valor calorico total del plato

Metodo valor calorico



74
75
76
77
78
79
80
81
82
83
84
# File 'lib/pract06/plato.rb', line 74

def valor_calorico_total

  total_vc = 0
  i = 0
  while i < conjunto_alimentos.length do
    total_vc += conjunto_alimentos[i].valor_energetico + total_vc
    i += 1
  end

  return total_vc
end