Menu
Coddy logo textTech

Usuwanie wszystkiego

Część sekcji Podstawy ścieżki Kotlin w Coddy. Lekcja 89 z 93.

challenge icon

Wyzwanie

Średni

W poprzedniej lekcji zaimplementowano funkcjonalność „Total and Average”. Teraz zaimplementuj funkcjonalność „Clear All” dla opcji 4.

Zmodyfikuj program, aby obsługiwał opcję 4:

  • Usuń wszystkie wydatki z listy expenses
  • Wyświetl All expenses cleared!

Wszystkie pozostałe opcje powinny nadal działać jak wcześniej:

  • Opcja 1: Dodaj wydatek
  • Opcja 2: Wyświetl wszystkie wydatki
  • Opcja 3: Suma i średnia
  • Opcja 5: Wyświetl Goodbye! i zakończ
  • Nieprawidłowe opcje: Wyświetl Invalid option

Format wejściowy:

Wybory z menu i kwoty wydatków jako ciągi znaków.

Format wyjściowy:

Menu, a następnie odpowiednia odpowiedź dla każdej czynności.

Przykład:

Jeśli danymi wejściowymi są 1, 50.0, 1, 25.0, 2, 4, 2 i 5, dane wyjściowe powinny wyglądać następująco:

--- Expense Tracker ---
1. Add Expense
2. View All Expenses
3. Total and Average
4. Clear All
5. Exit
Choose an option:
Enter expense amount:
Expense added!
--- Expense Tracker ---
1. Add Expense
2. View All Expenses
3. Total and Average
4. Clear All
5. Exit
Choose an option:
Enter expense amount:
Expense added!
--- Expense Tracker ---
1. Add Expense
2. View All Expenses
3. Total and Average
4. Clear All
5. Exit
Choose an option:
Your expenses:
- $50.0
- $25.0
--- Expense Tracker ---
1. Add Expense
2. View All Expenses
3. Total and Average
4. Clear All
5. Exit
Choose an option:
All expenses cleared!
--- Expense Tracker ---
1. Add Expense
2. View All Expenses
3. Total and Average
4. Clear All
5. Exit
Choose an option:
No expenses recorded.
--- Expense Tracker ---
1. Add Expense
2. View All Expenses
3. Total and Average
4. Clear All
5. Exit
Choose an option:
Goodbye!

Podpowiedź: Użyj metody clear() na swojej modyfikowalnej liście, aby usunąć wszystkie elementy.

Spróbuj swoich sił

fun main() {
    val expenses = mutableListOf<Double>()
    
    while (true) {
        println("--- Expense Tracker ---")
        println("1. Add Expense")
        println("2. View All Expenses")
        println("3. Total and Average")
        println("4. Clear All")
        println("5. Exit")
        println("Choose an option:")
        
        val choice = readLine()
        
        if (choice == "1") {
            println("Enter expense amount:")
            val amount = readLine()!!.toDouble()
            expenses.add(amount)
            println("Expense added!")
        } else if (choice == "2") {
            if (expenses.isEmpty()) {
                println("No expenses recorded.")
            } else {
                println("Your expenses:")
                for (expense in expenses) {
                    println("- \$$expense")
                }
            }
        } else if (choice == "3") {
            if (expenses.isEmpty()) {
                println("No expenses recorded.")
            } else {
                val total = expenses.sum()
                val average = total / expenses.size
                println("Total: \$$total")
                println("Average: \$$average")
            }
        } else if (choice == "5") {
            println("Goodbye!")
            break
        } else {
            println("Invalid option")
        }
    }
}

Wszystkie lekcje w sekcji Podstawy

Poćwicz samodzielnie: Edytor online Kotlin