用python展示前n位斐波那契数列
时间: 2023-11-07 18:02:08 浏览: 69
可以使用循环迭代或者递归的方式来展示前n位斐波那契数列。以下是两种实现方法:
1. 循环迭代方式:
```python
def fibonacci(n):
# 第一位和第二位都是1
a, b = 1, 1
# 用列表存储所有的斐波那契数列
fib_list = [a, b]
for i in range(2, n):
a, b = b, a + b
fib_list.append(b)
return fib_list[:n]
# 输出前10位斐波那契数列
print(fibonacci(10))
```
输出结果为:`[1, 1, 2, 3, 5, 8, 13, 21, 34, 55]`
2. 递归方式:
```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
# 输出前10位斐波那契数列
print(fibonacci(10))
```
输出结果为:`[1, 1, 2, 3, 5, 8, 13, 21, 34, 55]`
相关问题
使用python实现需要n个斐波那契数列
以下是使用Python实现需要n个斐波那契数列的代码:
```python
def fibonacci(n):
if n <= 0:
return []
elif n == 1:
return [0]
elif n == 2:
return [0, 1]
else:
fib = [0, 1]
for i in range(2, n):
fib.append(fib[i-1] + fib[i-2])
return fib
```
这个函数接受一个整数n作为参数,返回一个包含前n个斐波那契数列的列表。如果n小于等于0,则返回一个空列表;如果n等于1,则返回[0];如果n等于2,则返回[0, 1]。对于n大于2的情况,该函数通过循环计算斐波那契数列,并将结果添加到一个列表中,最后返回该列表。
python递归实现n个斐波那契数列。
递归是一种编程技术,它通过定义一个问题如何被分解为更小的同类问题来解决复杂问题。在Python中,我们可以使用递归来计算斐波那契数列,这是一个经典的递归例子,其中每个数字(从第三个开始)都是前两个数字的和。以下是递归方式实现斐波那契数列的Python代码:
```python
def fibonacci(n):
if n <= 0:
return "输入的数值应大于0"
elif n == 1:
return 0
elif n == 2:
return 1
else:
return fibonacci(n-1) + fibonacci(n-2)
# 输出前n个斐波那契数
def print_fibonacci_sequence(n):
for i in range(1, n+1):
print(fibonacci(i), end=" ")
n = int(input("请输入一个正整数:"))
print_fibonacci_sequence(n)
```
阅读全文