Menu
CoddyTech

Total dan Rata-rata

Termasuk bagian Dasar-Dasar dalam perjalanan Swift di Coddy. Pelajaran 81 dari 86.

challenge icon

Tantangan

Mudah

Di pelajaran sebelumnya, kamu menerapkan fitur "View all expenses". Sekarang, terapkan fitur "Show total and average" untuk opsi "3".

Ubah kodemu untuk menangani opsi "3":

  1. Saat pengguna memasukkan "3", periksa apakah array expenses kosong
  2. Jika array kosong, cetak No expenses to calculate.
  3. Jika array berisi pengeluaran, hitung dan tampilkan:
    • Total semua pengeluaran, dengan format Total: $X.X
    • Rata-rata pengeluaran, dengan format Average: $X.X
  4. Opsi "4" harus tetap mencetak Coming soon...
  5. Opsi "1", "2", dan "5" harus tetap berfungsi seperti sebelumnya

Petunjuk: Gunakan reduce(0, +) untuk menghitung total, lalu bagi dengan Double(expenses.count) untuk mendapatkan rata-ratanya.

Perilaku yang diharapkan:

  • Saat "3" dimasukkan tanpa pengeluaran, cetak No expenses to calculate.
  • Saat "3" dimasukkan dengan pengeluaran, cetak total pada satu baris dan rata-rata pada baris berikutnya

Contoh interaksi:

1. Add expense
2. View all expenses
3. Show total and average
4. Clear all expenses
5. Exit
3
No expenses to calculate.
1. Add expense
2. View all expenses
3. Show total and average
4. Clear all expenses
5. Exit
1
Enter expense amount:
20.0
Expense added!
1. Add expense
2. View all expenses
3. Show total and average
4. Clear all expenses
5. Exit
1
Enter expense amount:
30.0
Expense added!
1. Add expense
2. View all expenses
3. Show total and average
4. Clear all expenses
5. Exit
3
Total: $50.0
Average: $25.0
1. Add expense
2. View all expenses
3. Show total and average
4. Clear all expenses
5. Exit
5
Goodbye!

Coba sendiri

// Daily Expense Tracker - Menu Display

var expenses: [Double] = []

while true {
    // TODO: Write your code below to print the menu options
    // Each option should be on its own line with the format: "number. option text"
    print("1. Add expense")
    print("2. View all expenses")
    print("3. Show total and average")
    print("4. Clear all expenses")
    print("5. Exit")
    
    let choice = readLine()
    
    if choice == "1" {
        print("Enter expense amount:")
        if let input = readLine(), let amount = Double(input) {
            expenses.append(amount)
            print("Expense added!")
        }
    } else if choice == "2" {
        if expenses.isEmpty {
            print("No expenses recorded.")
        } else {
            print("Your expenses:")
            for expense in expenses {
                print("- $\(expense)")
            }
        }
    } else if choice == "3" {
        print("Coming soon...")
    } else if choice == "4" {
        print("Coming soon...")
    } else if choice == "5" {
        print("Goodbye!")
        break
    } else {
        print("Coming soon...")
    }
}

Semua pelajaran di Dasar-Dasar

Latihan sendiri: Playground Swift