Class: Alimento

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

Overview

prct06.rb

Autor

Adrián Melián Fernández

Introducción de la Clase Alimento

Implementación de la clase Alimento

Clase Alimento

Definición de la clase Alimento compuesta por

  • metodo initialize

  • metodo giv_nombre

  • metodo giv_gei

  • metodo giv_terreno

  • metodo valor_energetico

  • metodo to_s

  • <=>

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(nombre, proteinas, carbohidratos, lipidos, gei, terreno) ⇒ Alimento

Returns a new instance of Alimento.



27
28
29
30
# File 'lib/pract06/pract06.rb', line 27

def initialize(nombre, proteinas, carbohidratos, lipidos, gei, terreno)
	@nombre, @proteinas, @carbohidratos, @lipidos, @gei, @terreno = nombre, proteinas, carbohidratos, lipidos, gei, terreno
	valor_energetico = valor_energetico
end

Instance Attribute Details

#carbohidratosObject (readonly)

Returns the value of attribute carbohidratos.



23
24
25
# File 'lib/pract06/pract06.rb', line 23

def carbohidratos
  @carbohidratos
end

#geiObject (readonly)

Returns the value of attribute gei.



23
24
25
# File 'lib/pract06/pract06.rb', line 23

def gei
  @gei
end

#lipidosObject (readonly)

Returns the value of attribute lipidos.



23
24
25
# File 'lib/pract06/pract06.rb', line 23

def lipidos
  @lipidos
end

#nombreObject (readonly)

Returns the value of attribute nombre.



23
24
25
# File 'lib/pract06/pract06.rb', line 23

def nombre
  @nombre
end

#proteinasObject (readonly)

Returns the value of attribute proteinas.



23
24
25
# File 'lib/pract06/pract06.rb', line 23

def proteinas
  @proteinas
end

#terrenoObject (readonly)

Returns the value of attribute terreno.



23
24
25
# File 'lib/pract06/pract06.rb', line 23

def terreno
  @terreno
end

Instance Method Details

#<=>(other) ⇒ Object



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

def <=>(other)
	@valor_energetico <=> other.valor_energetico
end

#giv_gei(gei) ⇒ Object



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

def giv_gei(gei)
	return @gei
end

#giv_nombre(nombre) ⇒ Object



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

def giv_nombre(nombre)
	return @nombre	
end

#giv_terreno(terreno) ⇒ Object



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

def giv_terreno(terreno)
	return @terreno
end

#to_sObject



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

def to_s
	"Nombre: #{nombre}, Proteinas: #{proteinas}, Hidratos de carbono: #{carbohidratos}, Lipidos: #{lipidos}, Gases de efecto invernadero: #{gei}, Terreno: #{terreno}"
end

#valor_energeticoObject



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

def valor_energetico
	return ((@proteinas * 4) + (@carbohidratos * 9) + (@lipidos *4)).round(1)
end