Câu hỏi:

11/05/2023 92

Trao đổi, thảo luận và tìm hiểu ý tưởng thực hiện các tính toán sau bằng kĩ thuật đệ quy.

1. Tính tổng S(n)=1+2+3+...+n

2. Tính lũy thừa an=a×a×...×a  (n  lan) 

3. Tính n giai thừa n!=1×2×3×...×n

Siêu phẩm 30 đề thi thử THPT quốc gia 2024 do thầy cô VietJack biên soạn, chỉ từ 100k trên Shopee Mall.

Mua ngay

Quảng cáo

Trả lời:

verified
Giải bởi Vietjack

1. Tính tổng S(n)=1+2+3+...+n

Bước 1. Bài toán yêu cầu tính tổng của n số nguyên từ 1 đến n. Cần thiết lập hàm S(n) trả về giá trị tổng cần tim.
Bước 2. Điều kiện n ≥ 0.
Với n = 0 ta có S(n) = 0. Đây là phần cơ sở cho điều kiện
dừng của lời gọi đệ quy của hàm S(n).
Bước 3. Dễ thấy S(n) = n + S(n - 1) là công thức truy hồi của hàm S(n) và là cơ sở của lời gọi đệ quy của hàm.Chương trình như sau:

2. Tính lũy thừa an=a×a×...×a  (n  lan) 

Bước 1. Bài toán yêu cầu tính luỹ thừa an. Cần thiết lập hàm exp(a,n) trả về giá trị an.
Bước 2. Điều kiện là n ≥ 0 và theo quy ước thì exp(a,0) = 1 với mọi a. Đây chính là phần cơ sở cho điều kiện dừng của lời gọi đệ quy của hàm exp(a,n).
Bước 3. Ta có an=a·an1 suy ra exp(a,n) = a × exp(a,n-1), đây là công thức truy hồi tính exp(a,n). Từ đó có thể thiết lập lời gọi đệ quy của hàm này.

3. Tính n giai thừa n!=1×2×3×...×n

Bước 1. Bài toán yêu cầu tính n giai thừa n!. Ta cần thiết lập hàm giaithua(n) trả về giá trị n!.
Bước 2. Điều kiện là n ≥ 0 và quy ước 0! = 1, tức là giaithua (0) = 1. Đây là cơ sở cho điều kiện dừng của lời gọi đệ quy của hàm giaithua(n).
Bước 3. Ta có công thức giaithua(n) = n × giaithua(n-1), đây là công thức truy hồi tính giaithua(n). Từ đó dễ dàng thiết lập lời gọi đệ quy cho hàm này.

Quảng cáo

book vietjack

CÂU HỎI HOT CÙNG CHỦ ĐỀ

Câu 1:

Cho trước dãy A. Viết chương trình đệ quy để in dãy A theo thứ tự ngược lại.

Xem đáp án » 11/05/2023 220

Câu 2:

Chúng ta đã biết thuật toán sắp xếp chèn trên dãy A cho trước theo hàm sau

Chúng ta đã biết thuật toán sắp xếp chèn trên dãy A cho trước theo hàm sau:   (ảnh 1)

Hãy thiết kế lại chương trình trên sử dụng kĩ thuật đệ quy

Xem đáp án » 11/05/2023 194

Câu 3:

Viết chương trình theo kĩ thuật đệ quy để tính hàm SL(n) là tổng các số tự nhiên lẻ nhỏ hơn hoặc bằng n

Xem đáp án » 11/05/2023 172

Câu 4:

Chúng ta đã biết thuật toán tìm kiếm nhị phân trên các dãy phần tử đã sắp xếp. Hãy tìm tới thiết kế mới của thuật toán này theo kĩ thuật đệ quy. Trao đổi, thảo luận và trả lời các câu hỏi sau:

1. Nêu ý tưởng chính của giải thuật tìm kiếm nhị phân sử dụng đệ quy

2. Vị trí nào trong thuật toán có thể gợi ý cho kĩ thuật đệ quy?

3. Phần cơ sở của thiết kế đệ quy nằm ở bước nào?

Xem đáp án » 11/05/2023 154

Câu 5:

Hãy chỉ ra phần cơ sở và phần đệ quy của các chương trình trên.

Xem đáp án » 11/05/2023 141

Câu 6:

Giả sử A = [1, 3, 7, 9] và K = 10. Nếu áp dụng chương trình trên thì cần mấy lần gọi hàm đệ quy?

Xem đáp án » 11/05/2023 126

Câu 7:

Bạn An đã nghĩ ra thuật toán tìm kiếm nhị phân bằng đệ quy theo cách khác như sau:

Bạn An đã nghĩ ra thuật toán tìm kiếm nhị phân bằng đệ quy theo cách khác như sau: (ảnh 1)

a) Chương trình của bạn An có đúng không?

b) Trong chương trình trên, phần cơ sở là những lệnh nào?

Xem đáp án » 11/05/2023 124

Bình luận


Bình luận
tailieugiaovien.com.vn
tuyen-dung-giao-vien-1900