Class: Diet

Inherits:
Object
  • Object
show all
Includes:
Comparable
Defined in:
lib/dieta/diet.rb

Overview

Define una clase de menú dietético

Direct Known Subclasses

GrupoAlimentos, GrupoEdad

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(cabecera, menu, vct) ⇒ Diet

Constructor, inicializa el objeto con los parámetros pasados para la Cabecera, los Platos y los Valores Calóricos y Porcentajes



6
7
8
9
10
11
12
13
# File 'lib/dieta/diet.rb', line 6

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

Instance Attribute Details

#cabeceraObject

Returns the value of attribute cabecera



4
5
6
# File 'lib/dieta/diet.rb', line 4

def cabecera
  @cabecera
end

Returns the value of attribute menu



4
5
6
# File 'lib/dieta/diet.rb', line 4

def menu
  @menu
end

#vctObject

Returns the value of attribute vct



4
5
6
# File 'lib/dieta/diet.rb', line 4

def vct
  @vct
end

Instance Method Details

#<=>(other) ⇒ Object

Permite usar los operadores <,>,<=,>= para comparar objetos de la clase Diet



52
53
54
# File 'lib/dieta/diet.rb', line 52

def <=>(other)
	@vct[0] <=> other.vct[0]
end

#==(other) ⇒ Object

Permite comparar si dos objetos de la clase Diet son iguales



56
57
58
59
60
# File 'lib/dieta/diet.rb', line 56

def ==(other)
	@cabecera == other.cabecera
	@menu == other.menu
	@vct == other.vct
end

#get_cabeceraObject

Devuelve el nombre de la comida



24
25
26
# File 'lib/dieta/diet.rb', line 24

def get_cabecera
	@cabecera[0]
end

#get_grasasObject

Devuelve el porcentaje de grasa de la comida



44
45
46
# File 'lib/dieta/diet.rb', line 44

def get_grasas
	@vct[2]
end

#get_hidratosObject

Devuelve el porcentaje de hidratos de carbono de la comida



48
49
50
# File 'lib/dieta/diet.rb', line 48

def get_hidratos
	@vct[3]
end

#get_ingestaObject

Devuelve la ingesta



28
29
30
# File 'lib/dieta/diet.rb', line 28

def get_ingesta
	@cabecera[1]
end

#get_plato(num) ⇒ Object

Devuelve el plato con índice pasado por parámetro (1,2,3,…)



32
33
34
# File 'lib/dieta/diet.rb', line 32

def get_plato(num)
	@menu[num-1]
end

#get_proteinasObject

Devuelve el porcentaje de proteínas de la comida



40
41
42
# File 'lib/dieta/diet.rb', line 40

def get_proteinas
	@vct[1]
end

#get_vctObject

Devuleve el valor calórico de la comida respectiva



36
37
38
# File 'lib/dieta/diet.rb', line 36

def get_vct
	@vct[0]
end

#to_sObject

Muestra por pantalla la información que contiene el objeto de manera formateada



15
16
17
18
19
20
21
22
# File 'lib/dieta/diet.rb', line 15

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