exercise done

This commit is contained in:
julien committed 2026-10-16 16:11:23 +02:00
1 parent 55030af64d
commit 7049ba14b4
1 file changed
+2 -2
+49
View File
@@ -0,0 +1,49 @@
# Défi : regrouper des repas
#
# Écris la méthode `meal_totals(meals)`.
#
# Chaque repas contient un aliment et une quantité :
#
# { food: "dubia", quantity: 2 }
#
# La méthode doit retourner un hash contenant la quantité totale
# consommée pour chaque aliment.
#
# Exemple :
#
# meals = [
# { food: "dubia", quantity: 2 },
# { food: "mealworm", quantity: 3 },
# { food: "dubia", quantity: 1 }
# ]
#
# meal_totals(meals)
# => {
# "dubia" => 3,
# "mealworm" => 3
# }
#
# Contraintes :
# - ne modifie pas le tableau d'origine ;
# - le résultat doit fonctionner quel que soit le nom des aliments ;
# - évite d'écrire une condition spécifique pour chaque aliment.
meals = [
{ food: "dubia", quantity: 2 },
{ food: "mealworm", quantity: 3 },
{ food: "dubia", quantity: 1 },
{ food: "red_runner", quantity: 2 }
]
def meal_totals(meals)
total = {}
meals.each do |meal|
unless total.key?(meal[:food])
total[meal[:food]] = 0
end
total[meal[:food]] += meal[:quantity]
end
total
end
puts meal_totals(meals)