Mã đề C - Phân quyền chức năng theo vai trò người dùng
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: Chọn vai trò người dùng trong hệ thống, chương trình dùng switch trên mã vai trò để hiển thị quyền hạn tương ứng.
- 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
| Vai trò | Kết quả mong muốn |
|---|---|
| admin | Toàn quyền quản trị hệ thống |
| manager | Quản lý nội dung và người dùng |
| editor | Được tạo và chỉnh sửa nội dung, không quản trị hệ thống |
| author | Được tạo và chỉnh sửa nội dung, không quản trị hệ thống |
| member | Chỉ được tương tác (bình luận, đánh giá) |
| guest | Chỉ được xem nội dung công khai |
| hacker | Vai trò không tồn tại trong hệ thống |
Ảnh minh họa kết quả (bản đáp án)
Ràng buộc cấu trúc riêng cho mã đề C
Section có header riêng: Dùng một section có header con riêng, trong đó header chứa tiêu đề ngắn và đoạn mô tả. Không thay ràng buộc này bằng cấu trúc của mã đề khác.
