Giải Chuyên đề Tin học 11 Bài 3: Thực hành giải toán theo kĩ thuật đệ quy
Khởi động trang 16 Chuyên đề Tin học 11: Áp dụng kĩ thuật giải đệ quy để giải các bài toán, theo em cần phải đặc biệt lưu ý đến điều gì?
Lời giải:
Khi áp dụng kĩ thuật giải đệ quy để giải các bài toán, cần lưu ý đến điều kiện kết thúc đệ quy: Cần xác định điều kiện để thoát khỏi vòng lặp đệ quy, nếu không sẽ gây ra lỗi vô hạn lặp lại.
Luyện tập
Luyện tập 1 trang 18 Chuyên đề Tin học 11: Mô tả các bước tính gcd (93,60)
Lời giải:
STT |
a |
b |
a%b |
Ghi chú |
1 |
93 |
60 |
33 |
|
2 |
60 |
33 |
27 |
|
3 |
33 |
27 |
6 |
|
4 |
27 |
6 |
3 |
|
5 |
6 |
3 |
0 |
|
6 |
3 |
0 |
|
Nếu b = 0 thì dừng lại, thông báo ƯCLN = a |
Luyện tập 2 trang 18 Chuyên đề Tin học 11: Viết chương trình chuyển đổi số nhị phân sang hệ thập phân (tương tự nhiệm vụ 1) nhưng dãy nhị phân đầu vào được cho dưới dạng một dãy (list) các số 0 và 1. Ví dự nếu dãy đầu vào là A=[1, 1, 1, 1, 1, 1, 1] thì kết quả đầu ra là 127
Lời giải:
Để chuyển đổi số nhị phân sang hệ thập phân, ta có thể sử dụng kĩ thuật đệ quy như sau:
Vận dụng
Vận dụng 1 trang 18 Chuyên đề Tin học 11: Bài toán tính ƯCLN của hai số nguyên dương a, b có một cách tính khác nhau sau
Hãy viết lại chương trình trên theo kĩ thuật đệ quy.
Lời giải:
Vận dụng 2 trang 18 Chuyên đề Tin học 11: Thiết lập chương trình tính hàm gcd(a,b) – ƯCLN của các số nguyên không âm a, b theo thuật toán Euclid nhưng không đệ quy
Lời giải:
Bước cơ sở của đệ quy sẽ là trường hợp a hoặc b bằng 0, trong trường hợp này kết quả sẽ là giá trị khác 0 của a hoặc b.
Vận dụng 3 trang 18 Chuyên đề Tin học 11: Lớp An tiến hành đo chiều cao của cả lớp, kết quả lưu vào một tệp có tên chieucao.inp, trong tệp ghi lần lượt họ tên của các bạn trong lớp và chiều cao tương ứng. Thầy hiệu trưởng yêu cầu tổng kết và gửi cho Ban giám hiệu tên và chiều cao của bạn thấp nhất và cao nhất trong lớp. Viết chương trình giải quyết yêu cầu này theo kĩ thuật đệ quy. Ví dụ thông tin đầu vào và đầu ra của bài toán sẽ như sau:
Lời giải:
Để giải quyết yêu cầu này, ta có thể sử dụng kĩ thuật đệ quy để tìm chiều cao lớn nhất và nhỏ nhất trong danh sách.
Đầu tiên, ta đọc danh sách chiều cao từ tệp chieucao.inp. Tiếp theo, ta sử dụng hàm đệ quy để tìm chiều cao lớn nhất và nhỏ nhất.
Xem thêm lời giải bài tập Chuyên đề học tập Tin học lớp 11 Kết nối tri thức hay, chi tiết khác:
Bài 2: Thiết kế thuật toán đệ quy
Bài 3: Thực hành giải toán theo kĩ thuật đệ quy
Bài 4: Tháp Hà Nội
Bài 5: Thực hành thiết kế thuật toán theo kĩ thuật đệ quy
Bài 6: Ý tưởng và kĩ thuật chia để trị