Giải bài tập SGK Tin học 11 trang 142, 143 sách Cánh diều giúp các em học sinh lớp 11 xem gợi ý giải các câu hỏi Bài 13: Thực hành thiết kế và lập trình theo mô đun tiếp theo thuộc Chủ đề Fcs: Giải quyết vấn đề với sự trợ giúp của máy tính (Giới thiệu nghề quản trị cơ sở dữ liệu).
Soạn Tin học 11 Cánh diều Bài 13 giúp các em học sinh hiểu được kiến thức biết cách viết chương trình 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. Đồng thời, cũng giúp thầy cô tham khảo để soạn giáo án Tin học lớp 11 cho học sinh của mình theo chương trình mới.
Tin học 11 Bài 13: Thực hành thiết kế và lập trình theo mô đun (tiếp theo)
Nhiệm vụ 1
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
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
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.