Menu
Coddy logo textTech

Очистить всё

Часть раздела Основы путешествия по Kotlin на Coddy. Урок 89 из 93.

challenge icon

Задание

Средне

На предыдущем уроке вы реализовали функциональность «Total and Average». Теперь реализуйте функциональность «Clear All» для варианта 4.

Измените программу для обработки варианта 4:

  • Удалите все расходы из списка expenses
  • Выведите All expenses cleared!

Все остальные варианты должны продолжать работать как прежде:

  • Вариант 1: добавить расход
  • Вариант 2: просмотреть все расходы
  • Вариант 3: общая сумма и среднее значение
  • Вариант 5: вывести Goodbye! и завершить работу
  • Недопустимые варианты: вывести Invalid option

Формат ввода:

Пункты меню и суммы расходов в виде строк.

Формат вывода:

Меню, за которым следует соответствующий ответ для каждого действия.

Пример:

Если входные данные — это 1, 50.0, 1, 25.0, 2, 4, 2 и 5, вывод должен быть следующим:

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

Подсказка: Используйте метод clear() для изменяемого списка, чтобы удалить все элементы.

Попробуйте сами

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")
        }
    }
}

Все уроки раздела Основы

Потренируйтесь самостоятельно: Песочница Kotlin