Trang chủ Lớp 11 Tin học lớp 11 SGK Tin học 11 - Kết nối tri thức Câu hỏi 2 trang 83 Tin học 11 – Kết nối tri...

Câu hỏi 2 trang 83 Tin học 11 – Kết nối tri thức: Thiết lập màng bao gồm dãy các thông tin là danh sách học sinh và thông tin 3 điểm thi của học sinh tương ứng các bài thi số 1

Trả lời Câu hỏi 2 trang 83 Tin học 11 – Kết nối tri thức – Bài 17. Dữ liệu mảng một chiều và hai chiều. Gợi ý: Dựa vào kiến thức trong bài kết hợp kiến thức thực tế của bản thân để trả lời câu hỏi.

Câu hỏi/Đề bài:

Thiết lập màng bao gồm dãy các thông tin là danh sách học sinh và thông tin 3 điểm thi của học sinh tương ứng các bài thi số 1, 2, 3. Viết đoạn lệnh nhập bộ dữ liệu trên và chương trình in ra danh sách học sinh cùng với điểm trung bình của các bài thi.

Hướng dẫn:

Dựa vào kiến thức trong bài kết hợp kiến thức thực tế của bản thân để trả lời câu hỏi.

Lời giải:

Để lưu trữ danh sách học sinh và thông tin điểm thi của họ, bạn có thể sử dụng một danh sách chứa nhiều danh sách con. Mỗi danh sách con sẽ chứa tên học sinh (dạng chuỗi) và ba điểm số (dạng số) của họ tương ứng với ba bài thi.

Ví dụ, để tạo một mảng danh sách học sinh với thông tin điểm số, ta có thể sử dụng mã như sau:

# Nhập danh sách học sinh và điểm số

students = []

n = int(input(“Nhập số lượng học sinh: “))

for i in range(n):

  name = input(f”Nhập tên học sinh thứ {i+1}: “)

  mark1 = float(input(f”Nhập điểm bài thi 1 của {name}: “))

  mark2 = float(input(f”Nhập điểm bài thi 2 của {name}: “))

  mark3 = float(input(f”Nhập điểm bài thi 3 của {name}: “))

  students.append([name, mark1, mark2, mark3])

# Tính điểm trung bình và in ra danh sách học sinh và điểm trung bình của họ

for student in students:

  name = student[0]

  mark1 = student[1]

  mark2 = student[2]

  mark3 = student[3]

  avg_mark = (mark1 + mark2 + mark3) / 3

  print(f”Học sinh {name} có điểm trung bình là {avg_mark}”)