Định nghĩa dãy: cho hai số hạng liên tiếp t1, t2 thì số hạng thứ ba t3 = t1 + (t2 * t2). Hai số hạng đầu luôn là 0 và 1.
Viết hàm nhận n trả về số hạng thứ n của dãy.
Ví dụ: n = 6 → t6 = 27 vì dãy: 0, 1, 1, 2, 5, 27.
Ví dụ
const num = 6;
const findSequenceTerm = (num = 1) => {
const arr = [0, 1];
while (num > arr.length) {
const last = arr[arr.length - 1];
const secondLast = arr[arr.length - 2];
arr.push(secondLast + (last * last));
}
return arr[num - 1];
};
console.log(findSequenceTerm(num)); // 27
Kết quả
27