Menu
Coddy logo textTech

Ajouter une dépense

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

challenge icon

Défi

Facile

Développez votre gestionnaire de dépenses de la leçon précédente en ajoutant la fonctionnalité "Add Expense".

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 "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 "1" est sélectionnée, affichez ces invites :

Expense name: 

Ensuite, après avoir lu le nom :

Amount: 

Utilisez print pour toutes les invites (afin que le curseur reste sur la même ligne). Convertissez le montant en nombre flottant à l'aide de to_f.

Le programme recevra plusieurs entrées en séquence : le choix du menu, et si le choix est "1", le nom et le montant de la dépense suivront.

Par exemple, si les entrées sont 1, Coffee, 4.50, 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: Goodbye!

Si les entrées sont 1, Lunch, 12.99, 1, Bus fare, 2.50, 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: Goodbye!

Essayez vous-même

expenses = []

loop do
  puts "\n--- Expense Tracker ---"
  puts "1. Add Expense"
  puts "2. View Expenses"
  puts "3. Total & Average"
  puts "4. Clear All"
  puts "5. Exit"
  print "Choose an option: "
  
  choice = gets.chomp
  
  if choice == "5"
    puts "Goodbye!"
    break
  end
end

Toutes les leçons de Fondamentaux