Câu hỏi:
18/07/2024 109
Bài toán: Cho trước danh sách tên các bạn lớp em cùng với điểm trung bình cả năm học, được cho trong một tệp văn bản, mỗi dòng là thông tin của một học sinh. Cô giáo yêu cầu làm lại tệp dữ liệu này nhưng sắp xếp lại theo thứ tự giảm dần của điểm trung bình. Giả sử tập đầu vào có dạng Lop11A.inp, kết quả cần đưa ra tệp Lop11A.out. Nếu cần thiết kế bài toán trên theo phương pháp thiết kế theo mô đun thì sẽ tạo ra các mô đun, hàm hay thủ tục như thế nào? Không cần giải chi tiết bài toán, chỉ cần mô tả các hàm và ý nghĩa.\
Bài toán: Cho trước danh sách tên các bạn lớp em cùng với điểm trung bình cả năm học, được cho trong một tệp văn bản, mỗi dòng là thông tin của một học sinh. Cô giáo yêu cầu làm lại tệp dữ liệu này nhưng sắp xếp lại theo thứ tự giảm dần của điểm trung bình. Giả sử tập đầu vào có dạng Lop11A.inp, kết quả cần đưa ra tệp Lop11A.out. Nếu cần thiết kế bài toán trên theo phương pháp thiết kế theo mô đun thì sẽ tạo ra các mô đun, hàm hay thủ tục như thế nào? Không cần giải chi tiết bài toán, chỉ cần mô tả các hàm và ý nghĩa.\
Trả lời:
Có thể thiết kế bài toán trên theo ba mô đun, hay ba hàm sau:
1) NhapDL().
2) sapxep(). 3) GhiDL().
Sau đây là mô tả ý nghĩa của các hàm trên.
– Hàm NhapDL(fi) có tính năng đọc dữ liệu đầu vào từ tập văn bản và trả về hai mảng dữ liệu quan trọng: Mảng DS chứa danh sách họ tên học sinh trong lớp và Diem lưu điểm trung bình của học sinh trong lớp. Hàm này sẽ được thực hiện đầu tiên của chương trình.
- Hàm sapxep(A,B) có chức năng sắp xếp đồng thời hai dãy A, B theo tiêu chí tăng dần của A.
– Hàm GhiDL(fo,DS,Diem) sẽ ghi dữ liệu các mảng DS, Diem ra tập đầu ra, sau khi sắp xếp danh sách học sinh trong lớp theo thứ tự giảm dần của điểm trung bình.
Có thể thiết kế bài toán trên theo ba mô đun, hay ba hàm sau:
1) NhapDL().
2) sapxep(). 3) GhiDL().
Sau đây là mô tả ý nghĩa của các hàm trên.
– Hàm NhapDL(fi) có tính năng đọc dữ liệu đầu vào từ tập văn bản và trả về hai mảng dữ liệu quan trọng: Mảng DS chứa danh sách họ tên học sinh trong lớp và Diem lưu điểm trung bình của học sinh trong lớp. Hàm này sẽ được thực hiện đầu tiên của chương trình.
- Hàm sapxep(A,B) có chức năng sắp xếp đồng thời hai dãy A, B theo tiêu chí tăng dần của A.
– Hàm GhiDL(fo,DS,Diem) sẽ ghi dữ liệu các mảng DS, Diem ra tập đầu ra, sau khi sắp xếp danh sách học sinh trong lớp theo thứ tự giảm dần của điểm trung bình.
CÂU HỎI HOT CÙNG CHỦ ĐỀ
Câu 1:
Tiếp tục Câu 284, bổ sung các yêu cầu sau:
a) Thay đổi nội dung của tập dữ liệu đầu vào Lop11A.inp, đổi tên tập thành DSHS.inp, bổ sung thêm dữ liệu ngày sinh của mỗi học sinh. Như vậy, mỗi dòng của tập dữ liệu là thông tin của một học sinh có dạng như sau:
<Họ tên HS> <ngày sinh> <điểm trung bình
Ví dụ: Trần Thu Hà 12-1-2006 8.6
b) In ra danh sách học sinh được xếp theo thứ tự ngày sinh tăng dần, tức là tuổi giảm dần. Kết quả đồng thời đưa ra màn hình và ra tập văn bản DSHS.out.
Với các yêu cầu trên, em cần chỉnh sửa hay bổ sung các mô đun/hàm nào? Mô tả chức năng của các mô đun/hám này.
Tiếp tục Câu 284, bổ sung các yêu cầu sau:
a) Thay đổi nội dung của tập dữ liệu đầu vào Lop11A.inp, đổi tên tập thành DSHS.inp, bổ sung thêm dữ liệu ngày sinh của mỗi học sinh. Như vậy, mỗi dòng của tập dữ liệu là thông tin của một học sinh có dạng như sau:
<Họ tên HS> <ngày sinh> <điểm trung bình
Ví dụ: Trần Thu Hà 12-1-2006 8.6
b) In ra danh sách học sinh được xếp theo thứ tự ngày sinh tăng dần, tức là tuổi giảm dần. Kết quả đồng thời đưa ra màn hình và ra tập văn bản DSHS.out.
Với các yêu cầu trên, em cần chỉnh sửa hay bổ sung các mô đun/hàm nào? Mô tả chức năng của các mô đun/hám này.
Câu 2:
Phương pháp thiết kế chương trình theo mô đun là phương pháp làm mịn dần. Đúng hay sai?
Phương pháp thiết kế chương trình theo mô đun là phương pháp làm mịn dần. Đúng hay sai?
Câu 5:
Việc thiết kế chương trình theo mô đun có là duy nhất hay không? Có thể hay không có nhiều cách thiết lập các mô đun khác nhau cho một chương trình?
Việc thiết kế chương trình theo mô đun có là duy nhất hay không? Có thể hay không có nhiều cách thiết lập các mô đun khác nhau cho một chương trình?
Câu 7:
Tiếp tục bài toán ở Cầu 28,3, nhưng thêm các yêu cầu sau,
1) Tiện ích tra cứu: Nhập từ bàn phím một tên, thông báo tìm thấy ở bạn có tên 2) In thông tin ba bạn có điểm trung bình cao nhất lớp, Kết quả sẽ đưa ra lập văn bắn ketqua,out tên ba học sinh và điểm trung bình tương ứng,
Với các yêu cầu bổ sung trên em cần chỉnh sửa hay bổ sung thêm các mô đun hàm nào? Hãy mô tả các mô đun/hám đó, không cần lập trình đầy đủ.
Tiếp tục bài toán ở Cầu 28,3, nhưng thêm các yêu cầu sau,
1) Tiện ích tra cứu: Nhập từ bàn phím một tên, thông báo tìm thấy ở bạn có tên 2) In thông tin ba bạn có điểm trung bình cao nhất lớp, Kết quả sẽ đưa ra lập văn bắn ketqua,out tên ba học sinh và điểm trung bình tương ứng,
Với các yêu cầu bổ sung trên em cần chỉnh sửa hay bổ sung thêm các mô đun hàm nào? Hãy mô tả các mô đun/hám đó, không cần lập trình đầy đủ.
Câu 8:
Tiếp tục Câu 28,5. Bổ sung yêu cầu in danh sách học sinh của lớp, họ và tên xếp theo thứ tự từ điển, tên trước, họ đệm sau. Kết quả sẽ đưa ra tập HSout Em hãy mô tả các mô đun/hàm cần bổ sung để giải quyết yêu cầu này.
Tiếp tục Câu 28,5. Bổ sung yêu cầu in danh sách học sinh của lớp, họ và tên xếp theo thứ tự từ điển, tên trước, họ đệm sau. Kết quả sẽ đưa ra tập HSout Em hãy mô tả các mô đun/hàm cần bổ sung để giải quyết yêu cầu này.