Câu hỏi:

12/07/2024 717

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

Quảng cáo

Trả lời:

verified
Giải bởi Vietjack

Để in dãy A theo thứ tự ngược lại sử dụng kĩ thuật đệ quy, ta có thể thực hiện theo thuật toán sau:

1. Kiểm tra điều kiện dừng: nếu A rỗng, không còn phần tử nào để in, thoát khỏi hàm.

2. In phần tử cuối cùng của dãy A (A[-1]).

3. Gọi đệ quy hàm in dãy A trừ phần tử cuối cùng (A[:-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. (ảnh 1)

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

Lời giải

a) Không sử dụng đệ quy:

Để tính tổng của một dãy số A, ta có thể sử dụng vòng lặp for để cộng dồn từng phần tử trong dãy A lại với nhau

Viết chương trình tổng  S=1!+2!+...+n! theo hai cách: a) Không sử dụng đệ quy b) Có sử dụng kĩ thuật đệ quy (ảnh 1)

b) Có sử dụng kĩ thuật đệ quy:

Để tính tổng của một dãy số A sử dụng kĩ thuật đệ quy, ta có thể thực hiện theo thuật toán sau:

1. Kiểm tra điều kiện dừng: nếu A rỗng, tổng của dãy là 0.

2. Trường hợp ngược lại, tính tổng của dãy bằng tổng của phần tử cuối cùng của dãy A (A[-1]) cộng với tổng của dãy A trừ phần tử cuối cùng (A[:-1]).

Lời giải

Để tính hàm SL(n) là tổng các số tự nhiên lẻ nhỏ hơn hoặc bằng n theo kĩ thuật đệ quy, ta có thể sử dụng thuật toán sau:

1. Kiểm tra điều kiện dừng: nếu n = 1, trả về giá trị 1.

2. Nếu n là số lẻ, ta tính SL(n-2) và cộng thêm n vào kết quả.

3. Nếu n là số chẵn, ta tính SL(n-1) và không cộng thêm n vào kết quả.

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 (ảnh 1)

Lời giải

Bạn cần đăng ký gói VIP ( giá chỉ từ 199K ) để làm bài, xem đáp án và lời giải chi tiết không giới hạn.

Nâng cấp VIP

Lời giải

Bạn cần đăng ký gói VIP ( giá chỉ từ 199K ) để làm bài, xem đáp án và lời giải chi tiết không giới hạn.

Nâng cấp VIP

Lời giải

Bạn cần đăng ký gói VIP ( giá chỉ từ 199K ) để làm bài, xem đáp án và lời giải chi tiết không giới hạn.

Nâng cấp VIP