# Clase platos que utiliza alimentos class Platos include Comparable attr_accessor :nombre, :alimentos, :peso, :peso_total, :cal_array, :emisiones_array # Método initialize # Inicializa los diferentes atributos de la clase def initialize(nombre, alimentos, peso, peso_total, cal_array, emisiones_array) @nombre = nombre @alimentos = alimentos @peso = peso @peso_total = peso_total @cal_array = cal_array @emisiones_array = emisiones_array end # Método porcentaje # Calcula, segun los atributos dados, el porcentaje de proteinas, lipidos o carbohidratos # @return: devuelve el porcentaje requerido def porcentaje(alimentos, peso, peso_total) total=0 i=0 while i 670 && @cal_plato <= 830 @huella_e = 2.0 else @huella_e = 3.0 end @huella_c if @emisiones_plato <= 670 @huella_c = 1.0 elsif @emisiones_plato > 670 && @emisiones_plato <= 830 @huella_c = 2.0 else @huella_c = 3.0 end return (@huella_e+@huella_c)/2 end # Método suma # Método anteriormente utilizado para calcular todas las sumas, que ahora solo ocupa la suma del terreno ocupado # @return: La suma del array de entrada def suma(alimentos) total=0 i=0 while i # Método para comparar la eficiencia energética entre platos def <=>(other) @cal_plato <=> other.cal_plato end end