用递归方法编程计算Fibonacci数列的前N项。
时间: 2023-06-20 08:05:35 浏览: 122
c#斐波那契数列(Fibonacci)(递归,非递归)实现代码
5星 · 资源好评率100%
好的,以下是Python代码实现:
```python
def fibonacci(n):
if n <= 0:
return []
elif n == 1:
return [1]
elif n == 2:
return [1, 1]
else:
fib_list = fibonacci(n-1)
fib_list.append(fib_list[-1] + fib_list[-2])
return fib_list
n = int(input("请输入一个正整数:"))
fibonacci_list = fibonacci(n)
print("Fibonacci数列的前%d项为:" % n, fibonacci_list)
```
解释一下代码,首先定义了一个递归函数`fibonacci(n)`,用于计算Fibonacci数列的前n项。当n小于等于0时,返回空列表;当n等于1时,返回[1];当n等于2时,返回[1, 1]。当n大于2时,先递归计算前n-1项的Fibonacci数列,然后将最后两项的和追加到列表中,最后返回这个列表。
接下来,通过输入一个正整数n来调用`fibonacci(n)`函数,得到Fibonacci数列的前n项,并输出到屏幕上。
阅读全文