Mã đề G - Phân loại mức thuế theo bậc thu nhập
Kiến thức áp dụng: switch, case, break, hiện tượng fall-through, default; đối chiếu với if/else.
Yêu cầu
- Xây dựng chương trình phân loại với tối thiểu 6 trường hợp xử lý khác nhau, đúng ngữ cảnh: Nhập thu nhập chịu thuế mỗi tháng (triệu đồng), chương trình quy về bậc thuế rồi dùng switch để tra thuế suất.
- Bắt buộc dùng switch làm cấu trúc điều khiển chính, có default xử lý dữ liệu không hợp lệ.
- Đầu vào lấy từ tương tác của người dùng trên giao diện (nhập liệu hoặc chọn), kết quả hiển thị ra trang web.
- Có ít nhất 2 case dùng chung một khối xử lý bằng fall-through có chủ đích (xem comment giải thích trong
dapan.js). - Viết thêm phiên bản if/else cho cùng logic và nêu nhận xét ngắn về sự khác biệt.
- Nộp kèm bảng liệt kê: mỗi giá trị đầu vào ứng với kết quả đầu ra nào, có thử ít nhất 1 giá trị không hợp lệ.
Bảng đầu vào - đầu ra mong muốn
| Thu nhập chịu thuế (triệu đồng/tháng) | Kết quả mong muốn |
|---|---|
| 4 | Bậc 1 - Thuế suất 5% |
| 8 | Bậc 2 - Thuế suất 10% |
| 15 | Bậc 3 - Thuế suất 15% |
| 28 | Bậc 4 - Thuế suất 20% |
| 45 | Bậc 5 - Thuế suất 25% |
| 90 | Bậc 6/7 - Thuế suất 30% hoặc 35%, cần chuyên viên thuế tư vấn thêm |
| -5 | Thu nhập không hợp lệ để xác định bậc thuế |
Ảnh minh họa kết quả (bản đáp án)
Ràng buộc cấu trúc riêng cho mã đề G
Blockquote nhận xét: Thêm một nhận xét nổi bật bằng blockquote, sau đó có đoạn giải thích ngắn. Không thay ràng buộc này bằng cấu trúc của mã đề khác.
