Môn Tin họcQuản lý học tập Tin học

Tìm và sửa lỗi: Chấm điểm hùng biện tiếng Anh sai kết quả

Lớp 11Lập trìnhpythonGiải quyết vấn đề với máy tínhVận dụng cao

Thang điểm 10 · 4 test case chấm tự động · 3 tiêu chí chấm

Ban tổ chức cuộc thi hùng biện tiếng Anh Speak Up 2025 mượn lại mô đun tính điểm tổng hợp đã học (giám khảo đầu tiên và cuối cùng có hệ số 2, các giám khảo còn lại hệ số 1) để chấm điểm cho từng thí sinh. Khi kiểm thử, các em phát hiện hàm diem_gk(d) dưới đây cho ra kết quả sai lệch so với tính tay:

  • def diem_gk(d):
  •     diem = sum(d) + d[0] + d[len(d)-2]
  •     diem = diem / (len(d)+2)
  •     return round(diem, 2)

Hãy tìm lỗi trong đoạn code trên (gợi ý: so sánh với công thức đã học ở mô đun diem_gk() của bài toán SEA Games), sửa lại cho đúng, rồi viết chương trình hoàn chỉnh đọc dữ liệu và in kết quả.

Định dạng vào: Dòng đầu là số nguyên n (số thí sinh). Tiếp theo là n dòng, mỗi dòng gồm mã thí sinh và dãy điểm số của các giám khảo (số thực, cách nhau bởi dấu cách, ít nhất 3 giám khảo).

Định dạng ra: In ra n dòng theo đúng thứ tự nhập vào, mỗi dòng gồm mã thí sinh và điểm tổng hợp (làm tròn 2 chữ số thập phân), cách nhau bởi dấu cách.

InputOutputGiải thích
3
A01 8.0 7.5 9.0
A02 6.0 7.0 8.0 9.0
A03 9.5 9.0 8.5 9.0 9.5
A01 8.13
A02 7.5
A03 9.1
Với A01: (8.0+7.5+9.0+8.0+9.0)/5 = 8.13 (giám khảo đầu 8.0 và cuối 9.0 tính hệ số 2)
1
C01 7 8 9
C01 8.0Chỉ 3 giám khảo, đây là trường hợp tối thiểu cần kiểm thử
#thiết kế mô đun#tìm lỗi#chỉ số mảng#off-by-one#điểm tổng hợp#category:tu_duy_phan_bien#difficulty:analyzing

Giáo viên giao bài này cho lớp, học sinh nộp bài trực tuyến và được chấm tự động.

Giáo viên đăng nhập để giao bài