Đáp án Tin 11 Khoa học máy tính Kết nối bài 28 Thiết kế chương trình theo mô đun
Đáp án bài 28 Thiết kế chương trình theo mô đun. Bài giải được trình bày ngắn gọn, chính xác giúp các em học Tin 11 Khoa học máy tính Kết nối tri thức dễ dàng. Từ đó, hiểu bài và vận dụng vào các bài tập khác. Đáp án chuẩn chỉnh, rõ ý, dễ tiếp thu. Kéo xuống dưới để xem chi tiết
BÀI 28 - THIẾT KẾ CHƯƠNG TRÌNH THEO MÔ ĐUN
MỞ ĐẦU
CH 1: Em sẽ thiết kế chương trình như thế nào? Trao đổi với bạn về cách thiết kế chương trình sao cho hợp lí nhất.
Đáp án chuẩn:
Thiết kế chung ® Thiết kế công việc nhập dữ liệu ® Thiết kế công việc xử lí dữ liệu ® Thiết lập báo cáo, đưa ra dữ liệu.
1. THIẾT KẾ CHƯƠNG TRÌNH THEO MÔ ĐUN
HĐ 1. Thiết kế chương trình theo mô đun
CH 1: Thực hiện các bước thiết kế giải bài toán trên theo phương pháp làm mịn dần, trao đổi và thảo luận để biết được cách thiết kế chương trình theo mô đun.
Đáp án chuẩn:
Phương pháp thiết kế chương trình theo mô đun sẽ tách bài toán lớn thành các bài toán nhỏ hơn, sau đó thiết kế thuật toán và chương trình cho từng mô đun con.
Câu hỏi
CH 1: Chương trình trên được thiết kế có bao nhiêu mô đun?
Đáp án chuẩn:
3 mô đun.
CH 2: Các mô đun của chương trình trên có quan hệ với nhau như thế nào?
Đáp án chuẩn:
Mỗi mô đun thường là các chức năng độc lập, riêng biệt. Tuỳ thuộc vào từng bài toán và quan điểm thiết kế có thể tạo các mô đun này theo nhiều cách khác nhau.
2. LỢI ÍCH CỦA PHƯƠNG PHÁP THIẾT KẾ THEO MÔ ĐUN
HĐ 2. Tìm hiểu lợi ích của phương pháp thiết kế theo mô đun
CH 1: Với chương trình đã có trong Hoạt động 1, em sẽ làm gì nếu có các yêu cầu bổ sung như sau:
Yêu cầu thay đổi thông tin trong báo cáo: Ghi hai mặt hàng có doanh số cao nhất và bốn mặt hàng có doanh số thấp nhất.
Cập nhật, bổ sung các mặt hàng mới và doanh số trong ngày.
Yêu cầu làm thêm một báo cáo trong đó ghi doanh số bán trung bình trong ngày và danh sách các mặt hàng có doanh số lớn hơn doanh số trung bình này, kết quả đưa ra tệp Data2.out.
Em có nhận xét gì về công việc thực hiện các công việc bổ sung này?
Đáp án chuẩn:
Vì chương trình được thiết kế theo mô đun nên: Các mô đun được thiết lập một lần và sử dụng nhiều lần; dễ dàng nâng cấp, thay đổi, chỉnh sửa mà không mất công sửa lại toàn bộ chương trình; dễ dàng bổ sung các mô đun mới.
Câu hỏi
CH 1: Phân loại các công việc bổ sung trên vào ba loại sau:
Công việc mới hoàn toàn.
Công việc nâng cấp một mô đun cũ.
Công việc không liên quan đến thuật toán và lập trình.
Đáp án chuẩn:
Công việc mới hoàn toàn: Xây dựng một tính năng n mới, tạo một mô đun mới, thực hiện một dự án mới.
Công việc nâng cấp một mô đun cũ: Cải tiến mã nguồn hiện tại, tối ưu hóa mã nguồn hiện tại, cải thiện giao diện người dùng.
Công việc không liên quan đến thuật toán và lập trình: Thiết kế giao diện người dùng; xây dựng tài liệu hướng dẫn cho dự án; tương tác với khách hàng để thu thập thông tin phản hồi, kiểm thử và đảm bảo chất lượng sản phẩm; quản lý dự án, quản lý nhóm.
LUYỆN TẬP
CH 1: Nếu công việc bổ sung 3 có thêm yêu cầu in ra số lượng mặt hàng đã bán trong ngày thì cần thêm hay sửa lệnh nào của chương trình BC2().
Đáp án chuẩn:
Sửa lệnh prinf "in ra số lượng mặt hàng bán trong ngày"
CH 2: Viết thêm một chương trình cho công việc bổ sung 4 như sau: Cần in ra danh sách 1⁄3 số mặt hàng có doanh số thấp nhất trong ngày.
Đáp án chuẩn:
def in_danh_sach_1_3_so_mat_hang_thap_nhat(s,p):
# Sắp xếp danh sách mặt hàng theo doanh số tăng dần
p.sort(key=lambda x: x[s])
# Tính số lượng mặt hàng cần in (1/3 tổng số mặt hàng)
so_luong_can_in = len(p) // 3
# In ra danh sách 1/3 số mặt hàng có doanh số thấp nhất
print("Danh sách 1/3 số mặt hàng có doanh số thấp nhất:")
for i in range(so_luong_can_in):
print(f"{i+1}. Mặt hàng {p[i][0]} - Doanh s: {p[i][p]}")
VẬN DỤNG
CH 1: Thiết lập chương trình cho công việc thường làm vào cuối giờ bán hàng: Cho trước số K (một doanh số giả định), cần tìm ra mặt hàng có doanh số nhỏ hơn K nhưng gần với K nhất. Bài toán này có thể sử dụng thuật toán tìm kiếm nào để giải?
Đáp án chuẩn:
def find_nearest_item(arr, K):
# Sắp xếp danh sách mặt hàng theo thứ tự tăng dần của doanh số
arr.sort()
low, high = 0, len(arr) - 1
result = None
while low <= high:
mid = (low + high) // 2# Tính giá trị trung bình mid của low và high
if arr[mid] < K:
# Nếu giá trị doanh số của mặt hàng ở vị trí mid nhỏ hơn K
# Đặt low = mid + 1 để tìm phần tử lớn hơn K
low = mid + 1
elif arr[mid] > K:
# Nếu giá trị doanh số của mặt hàng ở vị trí mid lớn hơn K
# Đặt high = mid - 1 để tìm phần tử nhỏ hơn K
high = mid – 1
else:
# Nếu giá trị doanh số của mặt hàng ở vị trí mid bằng K
# Trả về mid làm kết quả
result = mid
break
# Cập nhật giá trị gần K nhất
if result is None or abs(arr[mid] - K) < abs(arr[result] - K):
result = mid
return arr[result]
# Example usage
arr = [10, 20, 30, 40, 50, 60, 70, 80, 90]
K = 45
nearest_item = find_nearest_item(arr, K)
print("Mặt hàng có doanh số nhỏ hơn K nhưng gần với K nhất là:", nearest_item)
CH 2: Em hãy giúp công ty du lịch thiết lập tour du lịch tối ưu cho khách hàng nếu biết trước các đánh giá của khách hàng đó.
Đáp án chuẩn:
Thuật toán tối ưu hóa: để tìm kiếm lộ trình du lịch tối ưu dựa trên các yếu tố như thời gian, khoảng cách, ngân sách và các đánh giá của khách hàng.
Phân tích đánh giá khách hàng: để hiểu các yêu cầu và mong muốn của khách hàng.
Tư vấn và đề xuất: sử dụng dữ liệu đánh giá của khách hàng để đề xuất và tư vấn cho khách hàng về các tour du lịch phù hợp.
Thêm kiến thức môn học
Giải bài tập những môn khác
Giải sgk lớp 11 KNTT
Giải sgk lớp 11 CTST
Giải sgk lớp 11 cánh diều
Giải SBT lớp 11 kết nối tri thức
Giải SBT lớp 11 chân trời sáng tạo
Giải SBT lớp 11 cánh diều
Giải chuyên đề học tập lớp 11 kết nối tri thức
Giải chuyên đề toán 11 kết nối tri thức
Giải chuyên đề ngữ văn 11 kết nối tri thức
Giải chuyên đề vật lí 11 kết nối tri thức
Giải chuyên đề hóa học 11 kết nối tri thức
Giải chuyên đề sinh học 11 kết nối tri thức
Giải chuyên đề kinh tế pháp luật 11 kết nối tri thức
Giải chuyên đề lịch sử 11 kết nối tri thức
Giải chuyên đề địa lí 11 kết nối tri thức
Giải chuyên đề mĩ thuật 11 kết nối tri thức
Giải chuyên đề âm nhạc 11 kết nối tri thức
Giải chuyên đề công nghệ chăn nuôi 11 kết nối tri thức
Giải chuyên đề công nghệ cơ khí 11 kết nối tri thức
Giải chuyên đề tin học 11 định hướng Khoa học máy tính kết nối tri thức
Giải chuyên đề tin học 11 định hướng Tin học ứng dụng kết nối tri thức
Giải chuyên đề quốc phòng an ninh 11 kết nối tri thức
Giải chuyên đề hoạt động trải nghiệm hướng nghiệp 11 kết nối tri thức
Giải chuyên đề học tập lớp 11 chân trời sáng tạo
Giải chuyên đề học tập lớp 11 cánh diều
Trắc nghiệm 11 Kết nối tri thức
Trắc nghiệm 11 Chân trời sáng tạo
Trắc nghiệm 11 Cánh diều
Bộ đề thi, đề kiểm tra lớp 11 kết nối tri thức
Đề thi Toán 11 Kết nối tri thức
Đề thi ngữ văn 11 Kết nối tri thức
Đề thi vật lí 11 Kết nối tri thức
Đề thi sinh học 11 Kết nối tri thức
Đề thi hóa học 11 Kết nối tri thức
Đề thi lịch sử 11 Kết nối tri thức
Đề thi địa lí 11 Kết nối tri thức
Đề thi kinh tế pháp luật 11 Kết nối tri thức
Đề thi công nghệ cơ khí 11 Kết nối tri thức
Đề thi công nghệ chăn nuôi 11 Kết nối tri thức
Đề thi tin học ứng dụng 11 Kết nối tri thức
Đề thi khoa học máy tính 11 Kết nối tri thức
Bộ đề thi, đề kiểm tra lớp 11 chân trời sáng tạo
Bộ đề thi, đề kiểm tra lớp 11 cánh diều
Đề thi Toán 11 Cánh diều
Đề thi ngữ văn 11 Cánh diều
Đề thi vật lí 11 Cánh diều
Đề thi sinh học 11 Cánh diều
Đề thi hóa học 11 Cánh diều
Đề thi lịch sử 11 Cánh diều
Đề thi địa lí 11 Cánh diều
Đề thi kinh tế pháp luật 11 Cánh diều
Đề thi công nghệ cơ khí 11 Cánh diều
Đề thi công nghệ chăn nuôi 11 Cánh diều
Đề thi tin học ứng dụng 11 Cánh diều
Đề thi khoa học máy tính 11 Cánh diều
Bình luận