Giải SBT Cánh diều Tin học 10 Bài 10,11: Chương trình con và thư viện các chương trình con có sẵn. Thực hành lập trình với hàm và thư viện

Giải chi tiết, cụ thể SBT Tin học 10 bộ sách Cánh diều bài 10,11: Chương trình con và thư viện các chương trình con có sẵn. Thực hành lập trình với hàm và thư viện. Đây là bộ sách mới được phê duyệt trong chương trình đổi mới của Bộ Giáo dục và đào tạo. Hi vọng, với cách hướng dẫn cụ thể và giải chi tiết học sinh sẽ nắm bài học tốt hơn trong chương trình học mới này.

Câu F45. Các ước thực sự

Ước thực sự của số nguyên dương n là các ước nguyên dương khác l và n. Xây dựng hàm divisors với tham số là số nguyên dương n và trả về số lượng ước thực sự của n, (0 ≤ n ≤ 1012). Viết chương trình nhập vào số nguyên dương n từ bàn phím, (0 ≤ n ≤ 1012), sử dụng hàm đã xây dựng đưa ra màn hình số ước thực sự của n.

Ví dụ:

Input

Output 

28

4

Gợi ý:

  • Điều kiện để số nguyên dương p là ước thực sự của n là: l < p < n và n % p == 0.

Nếu p là ước thực sự của n thì q = n//p cũng là ước thực sự của n. Đặc biệt, p == q khi và chỉ khi p2 = n

  • Như vậy ta chỉ cần tìm các p thoả mãn điều kiện (với 0 ≤ n ≤ 1012):

1 ≤ p ≤ n ≤ [ n + 0.5]

Trả lời:

Tham khảo chương trình sau:

Giải SBT Cánh diều Tin học 10 Bài 10,11: Chương trình con và thư viện các chương trình con có sẵn. Thực hành lập trình với hàm và thư viện

Câu F46. Số nguyên tố

Số nguyên tố là số nguyên lớn hơn 1, chỉ chia hết cho 1 và chính nó. Xây dựng hàm prime kiểm tra số nguyên không âm n (0 ≤ n ≤ 1012) có phải là số nguyên tố hay không, trả về True nếu n là số nguyên tố và False trong trường hợp ngược lại. Viết chương trình nhập số nguyên không âm n (0 ≤ n ≤ 1012) vào từ bàn phím, sử dụng hàm đã xây dựng đưa ra màn hình kết quả kiểm tra n có phải là số nguyên tố hay không.

Ví dụ:

Input

Output

31

True

Gợi ý:

  • Số 2 là số nguyên tố.
  • Số 0, 1 và các số chẵn lớn hơn 2 không phải là số nguyên tố.
  • Các số lẻ lớn hơn 2: n là hợp số khi và chỉ khi tồn tại một ước p≤n (với 0 ≤ n ≤ 1012). Ở trường hợp này chỉ cần kiểm tra có tồn tại p hay không.

Trả lời:

Tham khảo chương trình sau:

Giải SBT Cánh diều Tin học 10 Bài 10,11: Chương trình con và thư viện các chương trình con có sẵn. Thực hành lập trình với hàm và thư viện

Câu F47. Tổng chữ số

Xây dựng hàm sum_ digits tính tổng các chữ số của số nguyên dương n. Viết chương trình nhập số nguyên không âm n từ bản phím, sử dụng hàm đã xây dựng đưa ra màn hình tổng các chữ số của n.

Ví dụ:

Input

Output

4825

19

Gợi ý:

Hàm được xây dựng dựa trên cơ sở hai phép xử lí:

  • Trích chữ số hàng đơn vị của n: n % 10.
  • Xoá chữ số hàng đơn vị của n: n // 10.

Việc xử lí kết thúc khi có n bằng 0

Trả lời:

Tham khảo chương trình sau:

Giải SBT Cánh diều Tin học 10 Bài 10,11: Chương trình con và thư viện các chương trình con có sẵn. Thực hành lập trình với hàm và thư viện

Câu 48. Cấp số cộng

Ba số a, b, c theo trình tự tạo thành một cấp số cộng nếu tồn tại d để b = a + d và c = b + d. Hãy xây dựng hàm kiểm tra ba số a, b, c có tạo thành một cấp số cộng hay không và trả về giá trị True hoặc False tương ứng. Viết chương trình nhập từ bàn phím ba số thực trên cùng một dòng, các số cách nhau ít nhất một dấu cách. Sử dụng hàm đã tạo để kiểm tra ba số này có tạo thành cấp số cộng hay không (nếu cần thiết có thể đổi chỗ cho nhau) và đưa ra thông báo “Yes” hoặc “No” tương ứng.

Gợi ý: Nên sử dụng các hàm max, min của hệ thống.

Ví dụ:

Input

Output

15 5 10

Yes

Gợi ý:

Điều kiện để ba số a, b, c theo trình tự đã nêu tạo thành một cấp số cộng là b - a = = c - b. Với ba số x, y, z muốn kiểm tra xem có thể đổi chỗ để được ba số hạng liên tiếp của một cấp số cộng hay không, ta có thể sắp xếp chúng theo thứ tự tăng dần và sau đó kiểm tra điều kiện tạo cấp số cộng. Cách viết ngắn gọn nhất để sắp xếp ba số theo thứ tự tăng dần là:

x,y,z = min (x,y,z), x + y + z - min (z, y, z) - max (x, y,z) , max (x,y,z)

Trả lời:

Tham khảo chương trình sau:

Giải SBT Cánh diều Tin học 10 Bài 10,11: Chương trình con và thư viện các chương trình con có sẵn. Thực hành lập trình với hàm và thư viện

Câu F49. Cấp số nhân

Ba số a, b, c theo trình tự tạo thành một cấp số nhân nếu tồn tại q để b = aq và c = bq. Hãy xây dựng hàm kiểm tra ba số a, b, c có tạo thành một cấp số nhân hay không và trả về giá trị True hoặc False tương ứng. Viết chương trình nhập từ bàn phím ba số thực trên cùng một dòng, các số cách nhau ít nhất một dấu cách, sử dụng hàm đã nhập để kiểm tra ba số này có tạo thành cấp số nhân hay không (nếu cần thiết có thể đổi chỗ cho nhau) và đưa ra thông báo “Yes” hoặc “No” tương ứng.

Ví dụ:

Input

Output

34 4 12

No

Gợi ý:

Điều kiện để ba số a, b, c theo trình tự đã nêu tạo thành một cấp số nhân là bb = = ac.

Trả lời:

Tham khảo chương trình sau:

Giải SBT Cánh diều Tin học 10 Bài 10,11: Chương trình con và thư viện các chương trình con có sẵn. Thực hành lập trình với hàm và thư viện

Câu F50. Sai số

Trong các hệ thống hoạt động độc lập (máy bay không người lái, hệ thống phòng không, các trạm tự hành, ...) thời gian được tính độc lập trong sơ đồ điều khiển bằng giải thuật riêng. Giải thuật tính thời gian của một hệ thống phòng không cho kết quả trễ 10-6 giây cho mỗi giây hoạt động. Độ trễ này sẽ được tích luỹ trong quá trình hệ thống hoạt động liên tục. Như vậy nếu hệ thống hoạt động liên tục trong 8 giây thì thời gian tính được sẽ bị lệch đi 8 × 10-6 giây.

Em hãy xây dựng hàm delay với tham biến t là số giờ trả về kết quả số giây bị trễ dưới dạng số thực. Viết chương trình nhập từ bàn phím một số thực a là số giờ hoạt động liên tục của hệ thống, sử dụng hàm nói trên tính sai số khoảng cách (theo mét) khi xác định vị trí vật thể bay với tốc độ 1 700 m/s. Đưa kết quả tính được ra màn hình với độ chính xác làm tròn tới mét.

Gợi ý:

  • Để làm tròn x tới k chữ số lẻ, dùng hàm round (x, k) của hệ thống.
  • Để dễ đọc số nguyên lớn có thể dùng dấu gạch dưới để tách các nhóm số, ví dụ 1 000 có thê viết là 1_ 000.

Ví dụ:

Input

Output

100

612

Trả lời:

Tham khảo chương trình sau:

Giải SBT Cánh diều Tin học 10 Bài 10,11: Chương trình con và thư viện các chương trình con có sẵn. Thực hành lập trình với hàm và thư viện

Câu F51. Tổng hai số

Xây dựng hàm kiểm tra với 3 số a, b, c cho trước, trả về giá trị True nếu tồn tại một số là tổng của hai số còn lại, ngược lại trả về giá trị False.

Viết chương trình nhập từ bàn phím ba số nguyên trên cùng một dòng, các số cách nhau ít nhất một dấu cách, sử dụng hàm đã tạo để kiểm tra trong ba số này có số nào là tổng hai số còn lại hay không và đưa ra thông báo “Yes” hoặc “No” tương ứng.

Ví dụ:

Input

Output

4 12 8

Yes

Gợi ý: Kiểm tra cả ba trường hợp có thể xảy ra (vét cạn): a = b + c hoặc

b = a + c hoặc c = a + b.

Trả lời:

Tham khảo chương trình sau:

Giải SBT Cánh diều Tin học 10 Bài 10,11: Chương trình con và thư viện các chương trình con có sẵn. Thực hành lập trình với hàm và thư viện

Câu F52. Vị trí của hàm

Trong các câu sau, những câu nào đúng?

Vị trí có thể viết hàm trong chương trình là:

1) Viết ở đầu chương trình.

2) Viết bên trong một hàm khác.

3) Viết ở cuối chương trình.

4) Viết sau lời gọi tới nó trong chương trình chính.

5) Viết sau hàm có chứa lời gọi tới nó.

6) Viết trong chương trình chính, trước khi có lời gọi tới nó.

Trả lời:

Đáp án đúng 1, 2, 5, 6. Ví dụ về trường hợp đúng của câu 5

Giải SBT Cánh diều Tin học 10 Bài 10,11: Chương trình con và thư viện các chương trình con có sẵn. Thực hành lập trình với hàm và thư viện

Câu F53. Tìm lỗi

Xét bài toán: Nhiệt độ cảm nhận trên da người tỉ lệ nghịch với bình phương của tốc độ gió tính theo m/s thổi qua bề mặt da. Hãy viết chương trình nhập nhiệt độ thật t°C và tốc độ gió v m/s, tính nhiệt độ cảm nhận của con người dựa theo hàm xác định nhiệt độ cảm nhận theo t và v. Hãy thực hiện chương trình sau với t = 24oC và v = 2 m/s. Cho biết kết quả mà hệ thống đưa ra.

Tại sao có thông báo như vậy? Hãy chỉ một cách sửa chương trình để nhận được kết quả cần tìm.

Giải SBT Cánh diều Tin học 10 Bài 10,11: Chương trình con và thư viện các chương trình con có sẵn. Thực hành lập trình với hàm và thư viện

Trả lời:

Thông báo mà hệ thống đưa ra là

Giải SBT Cánh diều Tin học 10 Bài 10,11: Chương trình con và thư viện các chương trình con có sẵn. Thực hành lập trình với hàm và thư viện

Tham số trong lời gọi hàm phải tương ứng với tham số trong chương trình con (CTC). Ở đây, CTC có 2 tham số là t, v nhưng trong lời gọi hàm chỉ có 1 tham số nên bị báo lỗi. Cách khắc phục

Giải SBT Cánh diều Tin học 10 Bài 10,11: Chương trình con và thư viện các chương trình con có sẵn. Thực hành lập trình với hàm và thư viện

Câu F54. Đọc hiểu

Ngày 01/7/1932, Collatz - nhà toán học Đức đề xuất thực hiện phép biến đổi sau với số nguyên dương a:

Giải SBT Cánh diều Tin học 10 Bài 10,11: Chương trình con và thư viện các chương trình con có sẵn. Thực hành lập trình với hàm và thư viện

Với phép biến đổi này, sau khi thực hiện một số lần từ số nguyên a bất kì ta sẽ nhận được 1. Cho đến nay người ta vẫn chưa chứng minh được tính đúng đắn của giả thuyết đó.

Em hãy cho biết:

  • Hàm đã viết đã đúng cú pháp Python hay chưa? Nếu chưa đúng hãy tìm và sửa lỗi.
  • Biến đổi Collatz (10) và Collatz (15) trả về các kết quả tương ứng là bao nhiêu?

Trả lời:

Hàm trên còn chứa lỗi cú pháp. Cần sửa lại như sau:

Giải SBT Cánh diều Tin học 10 Bài 10,11: Chương trình con và thư viện các chương trình con có sẵn. Thực hành lập trình với hàm và thư viện

Collatz (10) trả về kết quả là 5.

Collatz (15) trả về kết quả là 46.

Câu F55. Tính giai thừa

Với n nguyên đương, theo định nghĩa n! = 1 × 2 × 3 × … × (n - 1) × n. Em hãy xây dựng hàm tính n! và viết chương trình gọi hàm đưa ra màn hình n! với n là các số nguyên dương được nhập vào từ bàn phím.

Trả lời:

Tham khảo chương trình

Giải SBT Cánh diều Tin học 10 Bài 10,11: Chương trình con và thư viện các chương trình con có sẵn. Thực hành lập trình với hàm và thư viện

Câu F56. Tìm bội chung nhỏ nhất

Xây dựng hàm tìm bội chung nhỏ nhất (BCNN) của hai số nguyên dương x và y. Viết chương trình đưa ra bội chung nhỏ nhất của một số cặp số nguyên dương a, b với dữ liệu nhập vào từ bàn phím.

Trả lời:

Ta có BCNN(a,b) = a×bUCLN (a, b). Tham khảo chương trình sau

Giải SBT Cánh diều Tin học 10 Bài 10,11: Chương trình con và thư viện các chương trình con có sẵn. Thực hành lập trình với hàm và thư viện

Ví dụ một kết quả thực hiện chương trình:

Giải SBT Cánh diều Tin học 10 Bài 10,11: Chương trình con và thư viện các chương trình con có sẵn. Thực hành lập trình với hàm và thư viện

Tìm kiếm google: Giải SBT Tin học 10 Cánh diều; SBT Tin học 10 Cánh diều; Giải SBT Tin học 10 Cánh diều Bài 10,11: Chương trình con và thư viện các chương trình con có sẵn. Thực hành lập trình với hàm và thư viện

Xem thêm các môn học

Giải SBT tin học 10 cánh diều


Đia chỉ: Tòa nhà TH Office, 90 Khuất Duy Tiến, Thanh Xuân, Hà Nội
Điện thoại hỗ trợ: Fidutech - click vào đây
Chúng tôi trên Yotube
Cùng hệ thống: baivan.net - Kenhgiaovien.com - tech12h.com