Menu
CoddyTech

Total dan Rata-rata

Termasuk bagian Dasar-Dasar dalam perjalanan Kotlin di Coddy. Pelajaran 88 dari 93.

challenge icon

Tantangan

Sedang

Pada pelajaran sebelumnya, kamu mengimplementasikan fungsi "View All Expenses". Sekarang, implementasikan fungsi "Total and Average" untuk opsi 3.

Ubah programmu agar menangani opsi 3:

  • Jika list expenses kosong, cetak No expenses recorded.
  • Jika ada pengeluaran, hitung dan cetak:
    • Total: $X dengan X sebagai jumlah semua pengeluaran
    • Average: $Y dengan Y sebagai rata-rata semua pengeluaran

Semua opsi lainnya harus tetap berfungsi seperti sebelumnya:

  • Opsi 1: Tambahkan pengeluaran
  • Opsi 2: Lihat semua pengeluaran
  • Opsi 5: Cetak Goodbye! lalu keluar
  • Opsi 4 atau opsi yang tidak valid: Cetak Invalid option

Format input:

Pilihan menu dan jumlah pengeluaran dalam bentuk string.

Format output:

Menu, diikuti respons yang sesuai untuk setiap tindakan.

Contoh:

Jika inputnya adalah 3, 1, 20.0, 1, 30.0, 1, 10.0, 3, dan 5, outputnya seharusnya:

--- 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:
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:
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:
Total: $60.0
Average: $20.0
--- Expense Tracker ---
1. Add Expense
2. View All Expenses
3. Total and Average
4. Clear All
5. Exit
Choose an option:
Goodbye!

Coba sendiri

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 == "5") {
            println("Goodbye!")
            break
        } else {
            println("Invalid option")
        }
    }
}

Semua pelajaran di Dasar-Dasar

Latihan sendiri: Playground Kotlin