Menu
Coddy logo textTech

Suma i średnia

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

challenge icon

Wyzwanie

Łatwy

Rozbuduj swój rejestr wydatków, dodając funkcjonalność "Total & Average".

Twój program powinien:

  1. Zainicjować pustą tablicę o nazwie expenses
  2. Utworzyć loop do, który wyświetla menu i odczytuje dane wejściowe 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 żaden nie istnieje
  5. Gdy użytkownik wpisze "3", obliczyć i wyświetlić sumę oraz średnią wszystkich wydatków lub komunikat, jeśli żaden nie istnieje
  6. Gdy użytkownik wpisze "5", wyświetlić Goodbye! i wyjść z pętli

Menu powinno być wyświetlane 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 "3":

  • Jeśli nie ma żadnych wydatków, wyświetl: No expenses to calculate.
  • Jeśli są jakieś wydatki, wyświetl sumę i średnią w tym formacie:
    Total: $X
    Average: $Y

Oblicz sumę, dodając wszystkie wartości :amount. Oblicz średnią, dzieląc sumę przez liczbę wydatków.

Na przykład, jeśli dane wejściowe to 3, a następnie 5 (obliczanie, gdy lista jest pusta), wynikiem powinno być:


--- 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!

Jeśli dane wejściowe to 1, Coffee, 5.0, 1, Lunch, 15.0, 3, a następnie 5, wynikiem powinno być:


--- 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!

Spróbuj swoich sił

# Zainicjalizuj tablicę expenses
expenses = []

# TODO: Napisz swój kod poniżej
# Utwórz pętlę do, która:
# - Wyświetla menu
# - Odczytuje dane wprowadzone przez użytkownika
# - Obsługuje opcje 1, 2, 3 i 5
# 
# Dla opcji "1": poproś o nazwę i kwotę, utwórz hash i dodaj go do expenses
# Dla opcji "2": wyświetl wszystkie wydatki lub komunikat, jeśli ich nie ma
# Dla opcji "3": oblicz i wyświetl sumę oraz średnią lub komunikat, jeśli nie ma wydatków
# Dla opcji "5": wypisz "Goodbye!" i zakończ program

Wszystkie lekcje w sekcji Podstawy

Poćwicz samodzielnie: Kompilator Ruby online