Menu
Coddy logo textTech

Total et moyenne

Fait partie de la section Fondamentaux du Journey Ruby de Coddy — leçon 83 sur 88.

challenge icon

Défi

Facile

Développez votre gestionnaire de dépenses en ajoutant la fonctionnalité "Total & Average".

Votre programme doit :

  1. Initialiser un tableau vide nommé expenses
  2. Créer une boucle loop do qui affiche le menu et lit l'entrée de l'utilisateur
  3. Lorsque l'utilisateur saisit "1", demander le nom et le montant de la dépense, créer un hash avec les clés :name et :amount, l'ajouter au tableau expenses, et afficher Expense added!
  4. Lorsque l'utilisateur saisit "2", afficher toutes les dépenses ou un message si aucune n'existe
  5. Lorsque l'utilisateur saisit "3", calculer et afficher le total et la moyenne de toutes les dépenses, ou un message si aucune n'existe
  6. Lorsque l'utilisateur saisit "5", afficher Goodbye! et quitter la boucle

Le menu doit s'afficher exactement comme auparavant :


--- Expense Tracker ---
1. Add Expense
2. View Expenses
3. Total & Average
4. Clear All
5. Exit
Choose an option: 

Lorsque l'option "3" est sélectionnée :

  • S'il n'y a pas de dépenses, affichez : No expenses to calculate.
  • S'il y a des dépenses, affichez le total et la moyenne dans ce format :
    Total: $X
    Average: $Y

Calculez le total en additionnant toutes les valeurs :amount. Calculez la moyenne en divisant le total par le nombre de dépenses.

Par exemple, si les entrées sont 3, puis 5 (calculer quand c'est vide), la sortie devrait être :


--- Expense Tracker ---
1. Add Expense
2. View Expenses
3. Total & Average
4. Clear All
5. Exit
Choose an option: No expenses to calculate.

--- Expense Tracker ---
1. Add Expense
2. View Expenses
3. Total & Average
4. Clear All
5. Exit
Choose an option: Goodbye!

Si les entrées sont 1, Coffee, 5.0, 1, Lunch, 15.0, 3, puis 5, la sortie devrait être :


--- Expense Tracker ---
1. Add Expense
2. View Expenses
3. Total & Average
4. Clear All
5. Exit
Choose an option: Expense name: Amount: Expense added!

--- Expense Tracker ---
1. Add Expense
2. View Expenses
3. Total & Average
4. Clear All
5. Exit
Choose an option: Expense name: Amount: Expense added!

--- Expense Tracker ---
1. Add Expense
2. View Expenses
3. Total & Average
4. Clear All
5. Exit
Choose an option: Total: $20.0
Average: $10.0

--- Expense Tracker ---
1. Add Expense
2. View Expenses
3. Total & Average
4. Clear All
5. Exit
Choose an option: Goodbye!

Essayez vous-même

# Initialiser le tableau des dépenses
expenses = []

# TODO: Écrivez votre code ci-dessous
# Créer une boucle qui :
# - Affiche le menu
# - Lit l'entrée de l'utilisateur
# - Gère les options 1, 2, 3 et 5
# 
# Pour l'option "1" : demander le nom et le montant, créer un hash, ajouter aux dépenses
# Pour l'option "2" : afficher toutes les dépenses ou un message s'il n'y en a pas
# Pour l'option "3" : calculer et afficher le total et la moyenne, ou un message s'il n'y en a pas
# Pour l'option "5" : afficher "Goodbye!" et quitter

Toutes les leçons de Fondamentaux