Giải bài tập Tin học lớp 11 Bài 13: Thực hành thiết kế và lập trình theo mo đun (tiếp theo)
Nhiệm vụ 1 trang 142 Tin học 11: Viết phiên bản thứ hai cho hàm thực hiện phân tích dãy điểm . Viết chương trình thực hiện hàm ptDiem theo phương án sử dụng tối đa các hàm có sẵn trong Python và chạy thử kiểm tra.
Lời giải:
– Sử dụng hàm sum để tính tổng và điểm trung bình.
– Gọi hàm Python thực hiện sắp xếp thứ tự tăng dần (không giảm); sau khi sắp xếp thì tìm được ngay max, min.
– Dãy số đã sắp thứ tự tăng dần (không giảm) nên có thể dùng hàm bisect left (trong mô đun bisect) tìm được các vị trí phân chia dãy điểm thành 4 đoạn điểm: Chưa đạt, Đạt, Khá và Tốt. Từ đó tính được số lượng điểm theo từng mức xếp hạng.
Nhiệm vụ 2 trang 142 Tin học 11: Viết phiên bản thứ hai của hàm ptMonHoc. Trong hàm ptMonHoc thay vì sử dụng quickSort_tuple_down cải biên từ hàm quicksort hãy gọi sử dụng các hàm có sẵn trong Python.
Lời giải:
– Python có sẵn phương thức sort, hàm sorted với tham biến key = lambda để sắp xếp danh sách các cặp hay các bộ nhiều thành phần, theo giá trị của một thành phần bất kì trong bộ. Cách gọi sử dụng để sắp xếp danh sách các cặp (tên, điểm) theo thứ tự điểm giảm dần theo mẫu tham khảo Hình 2:
– Trong thân hàm ptMonHoc sửa lại lời gọi hàm thực hiện việc sắp xếp, sử dụng hàm của Python,
– Để dùng hàm bisect_left cần sắp thứ tự tăng dần;
– Khi dãy đã sắp thứ tự tăng dần thì chỉ cần viết lại theo thứ tự đảo ngược để có dãy giảm dần.
Vận dụng trang 143 Tin học 11: Chạy chương trình thực hiện hàm ptDiem_bisect vừa hoàn thành với đầu vào là kết quả môn Tin học của lớp em và cho biết: Số lượng điểm của mức nào là nhiều nhất? Nên xếp hạng kết quả học tập môn Tin học chung của cả lớp ở mức nào?
Lời giải:
Chạy chương trình thực hiện hàm ptDiem_bisect vừa hoàn thành với đầu vào là kết quả môn Tin học của lớp em và cho biết: Số lượng điểm của mức nhiều nhất. Xếp hạng kết quả học tập môn Tin học chung của cả lớp ở mức cao nhất.
Xem thêm bài giải SGK Tin học lớp 11 Cánh diều hay, chi tiết khác:
Bài 11: Thực hành thiết kế và lập trình theo mo đun
Bài 12: Thực hành thiết kế và lập trình theo mo đun (tiếp theo)
Bài 13: Thực hành thiết kế và lập trình theo mo đun (tiếp theo)
Bài 14: Thực hành về thư viện các hàm tự định nghĩa
Bài 15: Cấu trúc dữ liệu danh sách liên kết và ứng dụng