用Javascript求斐波那契数列第n项的值
时间: 2024-11-04 18:13:50 浏览: 147
在JavaScript中,我们可以使用循环或递归来计算斐波那契数列的第n项。以下是两种常见方法:
**使用循环(迭代法):**
```javascript
function fibonacci(n) {
if (n <= 0) return 0;
else if (n === 1) return 1;
let fib = [0, 1];
for (let i = 2; i < n; i++) {
fib[i] = fib[i - 1] + fib[i - 2];
}
return fib[n - 1]; // JavaScript数组索引从0开始,所以n-1对应实际位置
}
```
**使用递归(递归法,虽然效率较低,但对于较小的n更直观):**
```javascript
function fibonacciRecursive(n) {
if (n <= 0) return 0;
else if (n === 1) return 1;
else return fibonacciRecursive(n - 1) + fibonacciRecursive(n - 2);
}
```
相关问题
javascript求斐波那契数列的第n项的值, 要求能算出第50项, 第100项的值.
斐波那契数列是指每个数都是前两个数之和的数列,例如 0、1、1、2、3、5、8、13、21、34、55、89、144……以此类推。要求斐波那契数列的第n项的值,可以使用递归或遍历的方式。以下是一个可以计算斐波那契数列第n项的 JavaScript 代码示例:
function fibonacci(n) {
if (n <= 0) {
return 0;
} else if (n === 1) {
return 1;
} else {
return fibonacci(n - 1) + fibonacci(n - 2);
}
}
console.log(fibonacci(50)); // 输出 12586269025
console.log(fibonacci(100)); // 输出 354224848179261915075
需要注意的是,当n比较大时,递归会造成性能问题。可以通过备忘录算法或动态规划等方式优化算法。
斐波那契数列又称为黄金分割数列,指的是“1,1,2,3 ,5,8,13,.....”这样一个数列,从中可以找出的规律是:这个数列从第三项开始,每一项都等于前两项之和。用JavaScript求斐波那契数列第10项的值
斐波那契数列第10项的值为55。
以下是用JavaScript实现的代码:
```
function fibonacci(n) {
if (n === 1 || n === 2) {
return 1;
} else {
return fibonacci(n - 1) + fibonacci(n - 2);
}
}
console.log(fibonacci(10)); // 输出 55
```
阅读全文
相关推荐















