用fun函数求fibonacci数列的前20项和
时间: 2023-08-29 13:07:36 浏览: 102
以下是用Python实现的fun函数来计算Fibonacci数列前20项的和:
```python
def fun(n):
if n == 1 or n == 2:
return 1
else:
return fun(n-1) + fun(n-2)
sum = 0
for i in range(1, 21):
sum += fun(i)
print(sum)
```
输出结果为:6765。
相关问题
编写函数fun,用递归求Fibonacci数列的第n项的值
以下是用递归方式求解Fibonacci数列第n项的Python代码实现:
```python
def fibonacci(n):
if n == 0:
return 0
elif n == 1:
return 1
else:
return fibonacci(n-1) + fibonacci(n-2)
```
在这个函数中,我们首先判断n是否为0或1,如果是,直接返回0或1。如果n大于1,则递归调用fibonacci函数来计算前两项的和。
需要注意的是,由于递归的方式会涉及到重复计算,因此在实际应用中,使用递归求解Fibonacci数列可能导致效率较低。可以考虑使用迭代方式或者动态规划来优化。
编写函数fun,用递归求Fibonacci数列的第n项的值用c语言
以下是用递归方式实现Fibonacci数列的第n项的值的C语言代码:
```c
#include <stdio.h>
int fibonacci(int n) {
if (n <= 1) {
return n;
} else {
return (fibonacci(n-1) + fibonacci(n-2));
}
}
int main() {
int n;
printf("请输入要求的Fibonacci数列的第n项:");
scanf("%d", &n);
printf("Fibonacci数列的第%d项为:%d", n, fibonacci(n));
return 0;
}
```
在此代码中,`fibonacci`函数采用递归方式计算Fibonacci数列的第n项。如果n小于或等于1,则返回n本身。否则,它将递归调用自己两次,以计算前两项的和。在`main`函数中,用户将输入要求的Fibonacci数列的第n项,并使用`fibonacci`函数计算该项的值。最后,该值将被输出到屏幕上。
阅读全文