Giải bài tập SGK Tin học 11, trang 127→131 sách Kết nối kiến thức với cuộc sống, giúp học sinh lớp 11 thấy được gợi ý giải câu hỏi. Bài 29: Thực hành thiết kế chương trình theo module của Chuyên đề 6: Kỹ thuật lập trình.
Ôn luyện tin học lớp 11 Kiến thức kết nối Bài 29 giúp học sinh nắm được kiến thức về cách thực hành thiết kế chương trình module. Đồng thời, tài liệu này giúp giáo viên nhanh chóng xây dựng và hoàn thiện kế hoạch giảng dạy của mình.
Giải bài tập tin học 11 Bài 29Thực hành 1
Chúng ta hãy sửa đổi chương trình trên để thêm điều kiện sau vào nhiệm vụ: Trong tệp đầu ra, thứ tự của các vận động viên được ghi theo thứ tự điểm đánh giá giảm dần.
Câu trả lời được đề xuất
nhập khẩu defDL(finp):
f = mở(vây)
A = []
B= []
cho dòng trong f:
s = line.split()
A.chắp thêm (các)[0])
nhiệt độ = s[1:len(s)]
nhiệt độ = [float(x) for x in temp]
B.append(tạm thời)
f.close()
trả về A, B
def diem_gk(d):
diem = tổng(d) + d[0] + d[len(d) – 1]
diem = diem / (len(d) + 2)
vòng về(diem, 2)
def xuly(B):
kq = []
cho i trong phạm vi(len(B)):
diem = diem_gk(B[i])
kq.append(diem)
trả lại kq
def writeDL(fout, A, B):
f = open(fout, “w”)
A, B = zip(*sorted(zip(A, B), key=lambda x: x[1]đảo ngược=Đúng))
cho tôi trong phạm vi(len(A)):
in (A[i],B[i]tập tin=f)
f.close()
finp = “seagames.inp”
fout = “ketqua.out”
DS, Điểm = nhapDL(finp)
Kq = xuly(Điểm)
bản ghiDL(fout, DS, Kq)
Thực hành 2
Trong nhiệm vụ trên, nếu công thức tính điểm chung của Sea Games thay đổi, liệu chúng ta có phải sửa lại toàn bộ chương trình không? Nếu cần, mô-đun nào chỉ cần sửa chữa? Chức năng nào?
Câu trả lời được đề xuất
Nếu công thức tính điểm tổng hợp của Trò chơi biển thay đổi thì chỉ cần sửa lại hàm điểm_gk(d) trong chương trình trên. Hàm điểm_gk(d) là hàm tính điểm tổng hợp dựa trên công thức hiện tại được xác định trong mã.
Nếu công thức tính điểm tổng hợp thay đổi bạn chỉ cần thay đổi logic tính toán trong hàm điểm_gk(d) để phản ánh công thức mới. Các phần khác của chương trình không thay đổi vì chúng sử dụng hàm điểm_gk(d) để tính điểm tổng hợp nên khi chỉnh sửa hàm thì kết quả đầu ra cũng sẽ được cập nhật theo công thức mới.
Giải pháp ứng dụng công nghệ thông tin lớp 11 Bài 29Ứng dụng 1
Cho một số tự nhiên n, cần in ra màn hình dãy n số nguyên tố đầu tiên. Ví dụ: nếu n = 5 thì dãy in sẽ là 2, 3, 5, 7, 11.
Câu trả lời được đề xuất
def is_prime(num):
“””Kiểm tra xem một số có phải là số nguyên tố hay không.”””
nếu số <= 1:
trả về Sai
cho i trong phạm vi (2, int(num**0.5) + 1):
nếu num% i == 0:
trả về Sai
trả về Đúng
def print_prime_numbers(n):
“””In n số nguyên tố đầu tiên.”””
đếm = 0
số = 2
trong khi đếm < n:
nếu is_prime(num):
in(số)
đếm += 1
số += 1
# Số nguyên n cần được in dưới dạng dãy số nguyên tố đầu tiên
n = int(đầu vào())
# Gọi hàm in dãy số nguyên tố
print_prime_numbers(n)
Áp dụng 2
Trong một kỳ thi Tin học dành cho thanh thiếu niên, mỗi học sinh sẽ phải thi 3 bài. Mỗi bài làm nếu học sinh làm được thì ban giám khảo sẽ chấm và cho điểm. Nếu họ không làm điều đó, điểm số sẽ không được tính. Sau khi thi xong, dữ liệu điểm thi của học sinh sẽ được lưu dưới dạng file văn bản và gửi về ban tổ chức. File điểm thi mẫu có dạng sau:
Quy định ghi trong file trên như sau:
– Mỗi dòng sẽ bắt đầu bằng số đăng ký của thí sinh, tiếp theo là ba giá trị điểm tương ứng với ba bài tập.
– Điểm thi sẽ là số tự nhiên từ 0 đến 20.
– Nếu học sinh không làm bài sẽ bị ghi điểm -1.
Tôi có trách nhiệm tính tổng điểm thi của các học sinh và đưa số liệu vào file ketqua.out là danh sách 3 học sinh có tổng điểm cao nhất sắp xếp theo thứ tự giảm dần từ trên xuống dưới. Định dạng dữ liệu được cung cấp bao gồm: số đăng ký, điểm thi của từng bài thi và cuối cùng là tổng điểm của cả 3 bài thi.
Ví dụ với số liệu trên thì kết quả như sau:
Câu trả lời được đề xuất
# Đọc dữ liệu từ file điểm thi
với open(“diemthi.inp”, “r”) dưới dạng tệp:
dữ liệu = file.readlines()
# Tạo danh sách lưu trữ thông tin điểm thi của thí sinh
điểm = []
cho dòng trong dữ liệu:
line = line.strip().split()# Chia dữ liệu trên mỗi dòng thành các từ
sbd = dòng[0]# Lấy số đăng ký của ứng viên
diem1 = int(dòng[1])#Nhận điểm bài 1
diem2 = int(dòng[2])#Nhận điểm bài 2
diem3 = int(dòng[3])#Nhận điểm bài 3
Total_diem = diem1 + diem2 + diem3# Tính tổng điểm
Scores.append((sbd, diem1, diem2, diem3, Total_diem))# Thêm thông tin vào danh sách
# Sắp xếp danh sách giảm dần theo tổng điểm
điểm.sort(key=lambda x: x[4]đảo ngược=Đúng)
# Ghi kết quả vào file ketqua.out
với open(“ketqua.out”, “w”) dưới dạng tệp:
cho điểm trong điểm số:
sbd = điểm[0]
điểm1 = điểm[1]
điểm2 = điểm[2]
điểm3 = điểm[3]
tổng_diem = điểm[4]
file.write(f”{sbd}t{diem1}t{diem2}t{diem3}t{tong_diem}”)
Cảm ơn các bạn đã theo dõi bài viết Tin học lớp 11 Bài 29: Luyện tập thiết kế chương trình mô-đun Định hướng Tin học lớp 11 Kết nối kiến thức Khoa học máy tính của TRẦN HƯNG ĐẠO nếu thấy bài viết này hữu ích Đừng quên để lại bình luận và đánh giá giới thiệu về website tới mọi người. Cảm ơn rất nhiều.
Nhớ để nguồn bài viết này: Tin học 11 Bài 29: Thực hành thiết kế chương trình theo mô đun Giải Tin học 11 Định hướng Khoa học máy tính Kết nối tri thức của website thpttranhungdao.edu.vn
Chuyên mục: Kiến thức chung
Trả lời