Sửa lại phần nhập dữ liệu hai học sinh sẽ nhập trực tiếp tên hai học sinh
Giải Chuyên đề Tin 12 Bài 17: Thực hành duyệt đồ thị tổng hợp - Kết nối tri thức
Luyện tập 1 trang 82 Chuyên đề Tin học 12: Sửa lại phần nhập dữ liệu hai học sinh: sẽ nhập trực tiếp tên hai học sinh, kiểm tra các tên này có nhập đúng không và thực hiện yêu cầu như trong chương trình trên.
Lời giải:
Để sửa lại phần nhập dữ liệu để nhập trực tiếp tên hai học sinh và kiểm tra tính hợp lệ của chúng, chúng ta có thể thực hiện như sau:
Bài mẫu tổng quát gợi ý:
def input_student_names():
while True:
name1 = input("Nhập tên học sinh thứ nhất: ")
name2 = input("Nhập tên học sinh thứ hai: ")
if name1.strip() == "" or name2.strip() == "":
print("Tên học sinh không được để trống. Vui lòng nhập lại.")
elif name1 == name2:
print("Hai học sinh không thể có cùng tên. Vui lòng nhập lại.")
else:
return name1, name2
# Hàm tính tổng điểm trung bình
def calculate_average_score(score_list):
return sum(score_list) / len(score_list)
# Hàm in thông tin học sinh
def print_student_info(name, scores):
avg_score = calculate_average_score(scores)
print(f"Học sinh {name}:")
print(f" - Điểm Toán: {scores[0]}")
print(f" - Điểm Văn: {scores[1]}")
print(f" - Điểm Anh: {scores[2]}")
print(f"Điểm trung bình: {avg_score:.2f}")
# Hàm nhập điểm cho học sinh
def input_student_scores(name):
scores = []
for subject in ["Toán", "Văn", "Anh"]:
while True:
try:
score = float(input(f"Nhập điểm {subject} của học sinh {name}: "))
if score < 0 or score > 10:
print("Điểm phải nằm trong khoảng từ 0 đến 10. Vui lòng nhập lại.")
else:
scores.append(score)
break
except ValueError:
print("Điểm phải là một số thực. Vui lòng nhập lại.")
return scores
# Hàm chính
def main():
print("Nhập thông tin của hai học sinh:")
name1, name2 = input_student_names()
scores1 = input_student_scores(name1)
scores2 = input_student_scores(name2)
print("\nThông tin hai học sinh sau khi nhập:")
print_student_info(name1, scores1)
print()
print_student_info(name2, scores2)
if __name__ == "__main__":
main()
- Trong phiên bản này, chúng ta sử dụng một vòng lặp while để yêu cầu người dùng nhập tên hai học sinh. Sau đó, kiểm tra tính hợp lệ của tên đó (không được để trống và hai học sinh không thể có cùng tên). Nếu các tên được nhập đúng cách, chúng ta trả về tên của hai học sinh và tiếp tục với việc nhập điểm và in thông tin học sinh như bình thường.
Lời giải bài tập Chuyên đề Tin 12 Bài 17: Thực hành duyệt đồ thị tổng hợp hay, ngắn gọn khác:
Xem thêm lời giải bài tập Chuyên đề học tập Tin học 12 Kết nối tri thức hay, ngắn gọn khác:
Chuyên đề Tin học 12 Bài 14: Kĩ thuật duyệt đồ thị theo chiều sâu
Chuyên đề Tin học 12 Bài 15: Thực hành duyệt đồ thị theo chiều sâu
Chuyên đề Tin học 12 Bài 16: Kĩ thuật duyệt đồ thị theo chiều rộng
Xem thêm các tài liệu học tốt lớp 12 hay khác:
- Giải Chuyên đề Tin học 12 Kết nối tri thức
- Giải Chuyên đề Tin học 12 Chân trời sáng tạo
- Giải Chuyên đề Tin học 12 Cánh diều
TÀI LIỆU CLC DÀNH CHO GIÁO VIÊN VÀ PHỤ HUYNH LỚP 12
Bộ giáo án, bài giảng powerpoint, đề thi file word có đáp án 2026 tại https://tailieugiaovien.com.vn/
Hỗ trợ zalo: VietJack Official
Tổng đài hỗ trợ đăng ký: 084 283 45 85
Công cụ giáo viên (2048.VN)
Tạo- trộn đề thi miễn phí từ file PDF, Word, Giao bài nhanh chóng, Hoàn toàn Free
- Soạn văn 12 (hay nhất)
- Soạn văn 12 (ngắn nhất)
- Soạn văn 12 (siêu ngắn)
- Giải sgk Toán 12
- Giải Tiếng Anh 12 Global Success
- Giải sgk Vật Lí 12
- Giải sgk Hóa học 12
- Giải sgk Sinh học 12
- Giải sgk Lịch Sử 12
- Giải sgk Địa Lí 12
- Giải sgk Giáo dục KTPL 12
- Giải sgk Tin học 12
- Giải sgk Công nghệ 12
- Giải sgk Hoạt động trải nghiệm 12
- Giải sgk Giáo dục quốc phòng 12
- Giải sgk Âm nhạc 12
- Giải sgk Mĩ thuật 12

