Menu
Coddy logo textTech

Wyświetlanie wszystkich wydatków

Część sekcji Podstawy ścieżki Ruby w Coddy. Lekcja 82 z 88.

challenge icon

Wyzwanie

Łatwy

Rozbuduj swój rejestr wydatków, dodając funkcję „View Expenses”.

Twój program powinien:

  1. Zainicjalizować pustą tablicę o nazwie expenses
  2. Utworzyć loop do, który wyświetla menu i odczytuje dane wprowadzone przez użytkownika
  3. Gdy użytkownik wpisze "1", poprosić o nazwę i kwotę wydatku, utworzyć hash z kluczami :name i :amount, dodać go do tablicy expenses i wyświetlić Expense added!
  4. Gdy użytkownik wpisze "2", wyświetlić wszystkie wydatki lub komunikat, jeśli nie ma żadnych
  5. Gdy użytkownik wpisze "5", wyświetlić Goodbye! i wyjść z pętli

Menu powinno wyświetlać się dokładnie tak jak wcześniej:


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

Po wybraniu opcji "2":

  • Jeśli nie ma żadnych wydatków, wyświetl: No expenses recorded yet.
  • Jeśli są wydatki, najpierw wyświetl pusty wiersz, a następnie --- Your Expenses ---, po czym wyświetl każdy wydatek w formacie: Name: $Amount

Na przykład, jeśli dane wejściowe to 2, a następnie 5 (wyświetlanie, gdy lista jest pusta), wynik powinien wyglądać tak:


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

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

Jeśli dane wejściowe to 1, Coffee, 4.5, 1, Lunch, 12.0, 2, a następnie 5, wynik powinien wyglądać tak:


--- 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: 
--- Your Expenses ---
Coffee: $4.5
Lunch: $12.0

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

Spróbuj swoich sił

expenses = []

loop do
  puts "--- 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 == "1"
    print "Expense name: "
    name = gets.chomp
    print "Amount: "
    amount = gets.chomp.to_f
    expenses.push({name: name, amount: amount})
    puts "Expense added!"
    puts ""
  elsif choice == "5"
    puts "Goodbye!"
    break
  end
end

Wszystkie lekcje w sekcji Podstawy

Poćwicz samodzielnie: Kompilator Ruby online