すべてクリア
CoddyのKotlinジャーニー「基礎」セクションの一部。レッスン 89/93。
チャレンジ
中級前のレッスンでは、「Total and Average」機能を実装しました。ここでは、オプション 4 の「Clear All」機能を実装してください。
オプション 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プレイグラウンド