Menu
CoddyTech

Thêm khoản chi

Thuộc phần Kiến thức nền tảng trong hành trình Ruby của Coddy. Bài học 81 trên 88.

challenge icon

Thử thách

Dễ

Phát triển tiếp trình theo dõi chi tiêu từ bài học trước bằng cách thêm chức năng "Add Expense".

Chương trình của bạn cần:

  1. Khởi tạo một mảng rỗng có tên expenses
  2. Tạo một loop do để hiển thị menu và đọc đầu vào của người dùng
  3. Khi người dùng nhập "1", yêu cầu nhập tên và số tiền chi tiêu, tạo một hash có các khóa :name và :amount, thêm hash đó vào mảng expenses, rồi in ra Expense added!
  4. Khi người dùng nhập "5", in ra Goodbye! rồi thoát khỏi vòng lặp

Menu cần hiển thị chính xác như trước:


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

Khi chọn tùy chọn "1", hiển thị các lời nhắc sau:

Expense name: 

Sau đó, khi đã đọc tên:

Amount: 

Dùng print cho tất cả lời nhắc để con trỏ vẫn ở cùng dòng. Chuyển số tiền thành số thực bằng to_f.

Chương trình sẽ nhận nhiều đầu vào theo thứ tự: lựa chọn menu, và nếu lựa chọn là "1", tiếp theo là tên và số tiền chi tiêu.

Ví dụ, nếu đầu vào là 1, Coffee, 4.50, rồi 5, đầu ra sẽ là:


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

Nếu đầu vào là 1, Lunch, 12.99, 1, Bus fare, 2.50, rồi 5, đầu ra sẽ là:


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

Tự làm thử

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

Tất cả bài học trong Kiến thức nền tảng

Tự luyện tập: Trình biên dịch Ruby online