Lập kế hoạch ngân sách
Thuộc phần Logic và luồng điều khiển trong hành trình R của Coddy. Bài học 63 trên 64.
Thử thách
KhóHoàn thiện budget(lines). Dòng đầu tiên là tiêu đề month,type,amount và mỗi dòng còn lại là một mục, chẳng hạn như 2024-01,income,3000. Một mục hợp lệ khi loại của nó là income hoặc expense và số tiền lớn hơn 0; bỏ qua mọi mục khác.
Trả về một dòng cho mỗi tháng có mục hợp lệ, theo thứ tự, 2024-01: income 3000.00, spent 1250.50, saved 1749.50, trong đó saved là thu nhập trừ chi tiêu (tháng không có thu nhập hoặc chi tiêu được tính là 0). Sau đó thêm Best month: cùng với tháng tiết kiệm được nhiều nhất (nếu nhiều tháng bằng nhau thì chọn tháng đầu tiên) và Skipped: cùng với số mục đã bỏ qua.
Nếu không có mục nào hợp lệ, chỉ trả về No valid entries và dòng Skipped.
Code được cung cấp truyền mọi dòng đầu vào cho budget() và in ra từng dòng được trả về.
Tự làm thử
budget <- function(lines) {
# Viết code của bạn ở đây
character(0)
}
# Đoạn code đầu vào/đầu ra có sẵn: giữ nguyên
input <- suppressWarnings(readLines(file("stdin")))
cat(budget(input), sep = "\n")
Tất cả bài học trong Logic và luồng điều khiển
1Chuỗi chuyên sâu
Chuỗi con với substr()Định dạng với sprintf()Tách và nối chuỗiTìm kiếm trong chuỗiThay thế văn bảnÔn tập: Tạo tên người dùng10Luồng điều khiển nâng cao
Hàm switch()ifelse() dạng vector hóarepeat và breakHàm đệ quyÔn tập: phân loại điểmTự luyện tập: Trình biên dịch R online