JavaScript is required

Thuật toán đệ qui dưới đây tính:

Function Tesr(n:integer): integer;

Begin

If n<=2 then Test:=1

Else Test: = Test (n-1) + Test (n-2);

End;

A.

Tổng n số tự nhiên đầu tiên.

B.

Số Fibonacci thứ n.

C.

Số nguyên tố thứ n.

D.

Tổng hai số nguyên liên tiếp n và n-1.

Trả lời:

Đáp án đúng: B


Đoạn code đệ quy cho hàm `Test(n)` được định nghĩa như sau: - Nếu `n <= 2`, hàm trả về 1. - Ngược lại, hàm trả về tổng của `Test(n-1)` và `Test(n-2)`. Đây chính là định nghĩa của dãy số Fibonacci, với hai số đầu tiên là F(1) = 1 và F(2) = 1. Số Fibonacci thứ n được tính bằng tổng của hai số Fibonacci trước đó: F(n) = F(n-1) + F(n-2). Các phương án khác không phù hợp vì: - A. Tổng n số tự nhiên đầu tiên: Công thức là n*(n+1)/2, không phải là đệ quy như trên. - C. Số nguyên tố thứ n: Không có mối liên hệ với đoạn code đã cho. - D. Tổng hai số nguyên liên tiếp n và n-1: Cũng không liên quan đến đoạn code đệ quy. Vì vậy, đáp án chính xác là B: Số Fibonacci thứ n.

Câu hỏi liên quan