Chấm bài — rubric 10 điểm
CHẤM BÀI LAB — RUBRIC 10 ĐIỂM (CHẾ ĐỘ B)
Dùng khi bạn đã tự viết code và muốn được chấm như giảng viên: chỉ đúng dòng sai, không viết lại cả bài.
Cách gửi bài
Dán vào chat theo mẫu:
[LAB] Lab 03 - bài Diem + SinhVien
[CHẾ ĐỘ] B (chấm bài)
[FILE] Diem.java
<dán code>
[FILE] SinhVien.java
<dán code>
[OUTPUT HIỆN TẠI]
<dán output khi chạy>
Nếu có lỗi biên dịch, dán nguyên văn thông báo — không cần tóm tắt.
Thang điểm
| Tiêu chí | Điểm | Mô tả đạt | Trừ điểm khi |
|---|---|---|---|
| 1. Đúng yêu cầu đề | 4 | Làm đủ mọi gạch đầu dòng của đề, đúng tên lớp/phương thức, đúng công thức | Thiếu phương thức (−0.5 mỗi cái); sai công thức (−1 đến −2); đổi tên lớp/phương thức đề cho (−1) |
| 2. Xử lý biên & dữ liệu sai | 3 | n ≤ 0, mảng rỗng, chia 0, null, số dư
không đủ, điểm ngoài miền đều được xử lý |
Thiếu 1 trường hợp (−0.5); để ném Exception ra ngoài
(−1); nhận dữ liệu vô lý mà vẫn tính (−1) |
| 3. Thiết kế lớp | 2 | Thuộc tính private, có constructor, getter/setter hợp
lý, quan hệ IS-A/HAS-A đúng |
Thuộc tính public (−0.5); không có constructor (−0.5);
dùng extends sai bản chất (−1); getter trả thẳng mảng nội
bộ (−0.5) |
| 4. Chất lượng code | 1 | Tên có nghĩa, có comment ở bước chính, không code chết, output đúng định dạng | Tên a, b, x1 vô nghĩa (−0.25); không comment (−0.25);
in sai định dạng đề (−0.5) |
Xếp loại: 9–10 Xuất sắc · 7–8.5 Tốt · 5–6.5 Đạt · <5 Chưa đạt (phải làm lại).
Cách mình chấm (bạn sẽ nhận được)
- Bảng điểm 4 tiêu chí + tổng, kèm 1 dòng lý do cho mỗi tiêu chí.
- Lỗi theo dòng:
Tệp:dòng→ mô tả → mức độ (chặn biên dịch / sai logic / sai phong cách). - Bản sửa tối thiểu: chỉ đoạn cần đổi, không dán lại cả bài.
- Câu hỏi kiểm tra: 2 câu về đúng chỗ bạn vừa sai, để chắc bạn hiểu chứ không chỉ sửa.
- Kết luận: đạt / chưa đạt + việc cần làm tiếp.
10 lỗi bị trừ điểm nhiều nhất (tự kiểm tra trước khi nộp)
| # | Lỗi | Ở lab nào | Trừ |
|---|---|---|---|
| 1 | i <= a.length khi duyệt mảng |
01, 03, 04 | −1 |
| 2 | Chia nguyên khi cần số thực ((a+b)/2 với
int) |
02, 03, 04 | −1 |
| 3 | Không kiểm tra n <= 0 trước
new int[n] |
01, 03 | −0.5 |
| 4 | new SV[5] rồi dùng ngay ds[0].layTen() (ô
còn null) |
03, 04 | −1 |
| 5 | String so sánh bằng == |
04, 05 | −0.5 |
| 6 | Thuộc tính public, không có setter kiểm tra |
02, 03 | −0.5 |
| 7 | switch thiếu break |
01, mảng | −0.5 |
| 8 | Quên super(...) hoặc super không phải dòng
đầu |
05 | −1 |
| 9 | rutTien không kiểm tra số dư → số dư âm |
02 | −1 |
| 10 | Không in kết quả đúng định dạng đề (thiếu nhãn, sai số thập phân) | tất cả | −0.5 |
Tự chấm nhanh trước khi gửi (checklist 60 giây)
Chấm tự động trước, chấm tay sau
Chạy bộ test có sẵn — nếu bài của bạn đã nằm trong src/,
chỉ cần:
cd "C:\Users\user\Documents\Default Project\bai-giai-lab"
.\tests\run-tests.ps1 -Lab lab03Test chỉ kiểm tra output, không kiểm tra thiết kế lớp — nên vẫn cần chấm tay (chế độ B) để đủ 10 điểm.
Lồng tiếng tóm tắt bài giảng (ZeroTTS AI)
ZeroTTS AI
00:00
--:--
📝 Lời thuyết minh (Tự động tô sáng câu đang đọc • Bấm vào câu để tua tới):
Đang nạp dữ liệu lời đọc...