递归输出斐波那契数列前20项
时间: 2023-08-27 19:36:18 浏览: 140
好的,以下是递归输出斐波那契数列前20项的代码:
```python
def fibonacci(n):
if n <= 1:
return n
else:
return (fibonacci(n-1) + fibonacci(n-2))
# 输出前20项
for i in range(20):
print(fibonacci(i))
```
输出结果为:
```
0
1
1
2
3
5
8
13
21
34
55
89
144
233
377
610
987
1597
2584
4181
```
相关问题
python用递归函数输出斐波那契数列前20项、每输出5个数换行
可以使用如下代码实现:
```python
def fibonacci(n):
if n <= 1:
return n
else:
return fibonacci(n-1) + fibonacci(n-2)
for i in range(20):
if i % 5 == 0 and i != 0:
print()
print(fibonacci(i), end=' ')
```
输出结果为:
```
0 1 1 2 3
5 8 13 21 34
55 89 144 233 377
610 987 1597 2584 4181
```
递归求斐波那契数列前n项
递归是一种函数调用自身的技术,可以用来求解斐波那契数列。斐波那契数列是一个每个数都是前两个数之和的数列,通常开始两项为0和1。对于递归求斐波那契数列的前n项,可以这样定义:
```python
def fibonacci(n):
if n <= 0:
return []
elif n == 1:
return [0]
elif n == 2:
return [0, 1]
else:
fib_sequence = fibonacci(n - 1)
fib_sequence.append(fib_sequence[-1] + fib_sequence[-2])
return fib_sequence
# 例如,求前5项
print(fibonacci(5)) # 输出: [0, 1, 1, 2, 3]
```
这个函数首先检查n的值,如果是0、1,返回特定长度的列表;然后如果n大于1,它会递归地计算前n-1项,然后将第n-1和第n-2项相加,添加到序列中。
阅读全文