Menu
CoddyTech

Tambahkan Pengeluaran

Termasuk bagian Dasar-Dasar dalam perjalanan Ruby di Coddy. Pelajaran 81 dari 88.

challenge icon

Tantangan

Mudah

Kembangkan expense tracker dari pelajaran sebelumnya dengan menambahkan fungsi "Add Expense".

Programmu harus:

  1. Menginisialisasi array kosong bernama expenses
  2. Membuat loop do yang menampilkan menu dan membaca input pengguna
  3. Saat pengguna memasukkan "1", meminta nama dan jumlah pengeluaran, membuat hash dengan kunci :name dan :amount, menambahkannya ke array expenses, lalu mencetak Expense added!
  4. Saat pengguna memasukkan "5", mencetak Goodbye! dan keluar dari perulangan

Menu harus ditampilkan persis seperti sebelumnya:


--- Expense Tracker ---
1. Add Expense
2. View Expenses
3. Total & Average
4. Clear All
5. Exit
Choose an option: 

Saat opsi "1" dipilih, tampilkan prompt berikut:

Expense name: 

Lalu, setelah membaca nama:

Amount: 

Gunakan print untuk semua prompt agar kursor tetap berada di baris yang sama. Ubah jumlahnya menjadi float menggunakan to_f.

Program akan menerima beberapa input secara berurutan: pilihan menu, lalu jika pilihannya "1", nama dan jumlah pengeluaran.

Contohnya, jika inputnya adalah 1, Coffee, 4.50, lalu 5, outputnya harus seperti berikut:


--- Expense Tracker ---
1. Add Expense
2. View Expenses
3. Total & Average
4. Clear All
5. Exit
Choose an option: Expense name: Amount: Expense added!

--- Expense Tracker ---
1. Add Expense
2. View Expenses
3. Total & Average
4. Clear All
5. Exit
Choose an option: Goodbye!

Jika inputnya adalah 1, Lunch, 12.99, 1, Bus fare, 2.50, lalu 5, outputnya harus seperti berikut:


--- Expense Tracker ---
1. Add Expense
2. View Expenses
3. Total & Average
4. Clear All
5. Exit
Choose an option: Expense name: Amount: Expense added!

--- Expense Tracker ---
1. Add Expense
2. View Expenses
3. Total & Average
4. Clear All
5. Exit
Choose an option: Expense name: Amount: Expense added!

--- Expense Tracker ---
1. Add Expense
2. View Expenses
3. Total & Average
4. Clear All
5. Exit
Choose an option: Goodbye!

Coba sendiri

expenses = []

loop do
  puts "\n--- Expense Tracker ---"
  puts "1. Add Expense"
  puts "2. View Expenses"
  puts "3. Total & Average"
  puts "4. Clear All"
  puts "5. Exit"
  print "Choose an option: "
  
  choice = gets.chomp
  
  if choice == "5"
    puts "Goodbye!"
    break
  end
end

Semua pelajaran di Dasar-Dasar

Latihan sendiri: Compiler Ruby online