Giải SBT Tin học 11 KNTT Bài 29. Thực hành thiết kế chương trình theo modun
Giải SBT Tin học 11 KNTT Bài 29. Thực hành thiết kế chương trình theo modun
-
111 lượt thi
-
7 câu hỏi
-
0 phút
Danh sách câu hỏi
Câu 4:
14/07/2024Chúng ta đã biết phương thức count() sẽ tính số lần lặp không chồng lấn của một xâu con trong xâu mẹ (nếu không có thì trả về 0). Ví dụ: xâu con “aba” sẽ lặp không chồng lấn trong xâu “abababacdaba” 3 lần.
>>> Str = "abababacdaba"
>>> sub = "aba"
>>> Str.count(sub)
3
Nhưng nếu tính theo cách có chồng lấn thì xâu con sub sẽ lặp 4 lần trong xâu mę Str.
Bài toán: Dữ liệu đầu vào được cho trong tệp văn bản String.inp có dạng sau: – Dòng đầu tiên ghi xâu con sub.
− n dòng tiếp theo, mỗi dòng là một xâu kí tự bất kì.
Kết quả được lưu trong tệp String.out bao gồm n dòng, mỗi dòng tương ứng là kết quả số lần lặp không chồng lấn của xâu con sub trong xâu tại dòng tương ứng.
Hàm quan trọng nhất của chương trình là hàm scount(sub,Str) đếm số lần lặp không chồng lấn của xâu con sub trong xâu mẹ Str. Có rất nhiều cách viết hàm này, sau đây là một cách.
Câu 5:
20/07/2024Viết chương trình bầu lớp trưởng với cách bầu như sau: Mỗi bạn sẽ đưa ra lựa chọn của mình, được phép đề cử từ 1 đến 3 ứng viên. Sau đó, ban kiểm phiếu sẽ tổng hợp kết quả, ứng viên nào được đề cử nhiều nhất sẽ được chọn làm lớp trưởng. Dữ liệu đầu vào là tệp văn bản Phieu.inp bao gồm nhiều dòng, mỗi dòng ứng với đề cử của một học sinh. Vậy, mỗi dòng sẽ ghi từ 1 đến 3 tên, cách nhau bởi dấu cách. Chương trình sẽ đưa ra kết quả là tên bạn được bầu làm lớp trưởng.
Chương trình sẽ có hai mô đun/hàm sau:
1) NhapDL(). Hàm nhập dữ liệu đầu vào. Hàm trả lại dãy tên các bạn được bình chọn.
2) mode(A). Hàm tính giá trị mode của dãy A. Giá trị mode là giá trị được lặp lại nhiều nhất trong dãy A. Ở đây mode chính là tên của bạn HS được bầu chọn nhiều nhất.
Chương trình hoàn chỉnh như sau:
Câu 6:
22/07/2024Một nhóm các bạn tình nguyện tham gia làm đồ chơi cho các bạn nhỏ vùng cao bằng cách ghép các thanh gỗ nhỏ để tạo thành một tam giác. Nhóm tình nguyện kêu gọi các bạn đóng góp các thanh gỗ nhỏ, tổng số thu được n thanh gỗ, đánh số từ 0 đến n − 1 và có độ dài tương ứng là A[0], A[1], ..., A[n – 1] Em hãy viết chương trình cho biết từ các thanh gỗ đó có thể tạo được bao nhiêu tam giác, chú ý các tam giác tạo thành từ một bộ 3 thanh được tính là may tam giác.
Dữ liệu được cho trong tập văn bản Thanhgo.inp chứa n số tự nhiên lớn hơn Kết quả đưa ra tập Tamgiac.out chỉ chứa một số tự nhiên là số tam giác có thể
tạo được từ dữ liệu ban đầu.
Chương trình sẽ có bốn mô đun/hàm sau:
1) NhapDL(). Hàm nhập dữ liệu đầu vào, hàm sẽ trả lại dãy độ dài của các thanh gỗ.
2) istamgiac(a,b,c). Hàm kiểm tra xem bộ ba số a, b, c có tạo thành một tam giác hay không.
3) tamgiac(). Hàm tính và đếm số các tam giác có thể tạo được từ dãy độ dài các thanh gỗ.
4) GhiDL(). Hàm ghi kết quả ra tệp.
Chương trình hoàn chỉnh như sau:
Câu 7:
14/07/2024Một công trình xây dựng đến giai đoạn lát sàn nhà cho các căn hộ theo yêu cầu của khách hàng. Do yêu cầu của người dùng đa dạng nên chủ đầu tư phải thu thập yêu cầu của khách hàng và tập hợp, đưa vào các tập dữ liệu đả chuyển cho bộ phận tính chi phí. Dữ liệu đầu vào được cho trọng tập có tên Data.inp bao gồm nhiều dòng, mỗi dòng là một yêu cầu của một khách hàng, dữ liệu trên một dòng có dạng như sau:
– Hai thông số đầu tiên là chiều ngang và chiều dài của căn phòng cần hoàn thiện. Dữ liệu là số thập phân theo đơn vị đo là mét.
– Giá trị tiếp theo là đơn giá lát mỗi mét vuông, giá trị là số thập phân. Dữ liệu tính toán được đưa ra tệp văn bản có tên Data out với định dạng mỗi
dòng như sau:
– Phần đầu của dữ liệu được đưa ra giống với dữ liệu đầu vào, đó là thông tin của từng căn hộ với chiều ngang, chiều dài, đơn giá và bên cạnh là chi phí lát
sàn cho căn hộ này.
– Dòng cuối của tập dữ liệu ra có ghi tổng toàn bộ chi phí lát sàn nhà của cả công trình.
Em hãy thiết lập chương trình giải bài toán trên theo phương pháp thiết kế theo mô đun.
Bước 1. Phân tích tổng quát.
Chương trình sẽ bao gồm ba mô đun chức năng chính:
– Chức năng nhập dữ liệu từ tập đầu vào.
– Chức năng xử lí dữ liệu chính đã được nhập từ bước trên.
– Chức năng đưa dữ liệu ra.
Bước 2. Thiết lập chi tiết chức năng đọc dữ liệu. Kết quả của mô đun này là trả về mảng dữ liệu A, mỗi phần tử của A là bộ ba dữ liệu chiều ngang, chiều dài và đơn giá (kí hiệu bộ ba này là (n, d, g). Hàm đọc dữ liệu có tên là nhapDL(finp) với tham số finp là tên của tệp dữ liệu.
Bước 3. Bước tiếp theo là xử lí dữ liệu. Chức năng này sẽ nhận dữ liệu đầu vào là mảng A và thực hiện tính chi phí cho từng bộ dữ liệu của mảng A, kết quả tính toán sẽ đưa ra mảng C. Chú ý hàm tinh_cp(n, d, g) sẽ tính theo biểu thức n*d*g.