用python写一个斐波那契数列
时间: 2023-09-15 18:05:36 浏览: 134
fibo.rar_55_fibo_python用递归写斐波那契数列fibo
5星 · 资源好评率100%
### 回答1:
用python写一个斐波那契数列的程序如下:
def fibonacci(n):
if n == 0:
return 0
elif n == 1:
return 1
else:
return fibonacci(n-1) + fibonacci(n-2)
print(fibonacci(10))
### 回答2:
斐波那契数列是一个由前两个数相加得到的数列,开始的两个数一般是0和1。从第三项开始,每一项都是前两项的和。用Python编写一个斐波那契数列的函数如下:
```python
def fibonacci(n):
if n <= 0: # 输入小于等于0的情况,返回空列表
return []
elif n == 1: # 输入为1的情况,返回[0]
return [0]
elif n == 2: # 输入为2的情况,返回[0, 1]
return [0, 1]
else: # 输入大于2的情况
fib_list = [0, 1] # 初始化前两项
for i in range(2, n):
fib_list.append(fib_list[i-1] + fib_list[i-2]) # 计算并添加下一项
return fib_list
n = int(input("请输入要计算的项数:"))
fibonacci_list = fibonacci(n)
print(f"斐波那契数列的前{n}项为:{fibonacci_list}")
```
通过上述代码,我们可以根据用户输入的项数,计算并输出对应的斐波那契数列。例如,如果用户输入的项数为6,结果将会打印出前6项的斐波那契数列:[0, 1, 1, 2, 3, 5]。
### 回答3:
斐波那契数列是一个经典的数学问题,可以使用Python编程语言来实现。下面是一个使用递归方式编写的斐波那契数列程序:
```python
def fibonacci(n):
if n <= 1:
return n
else:
return fibonacci(n-1) + fibonacci(n-2)
# 测试
n = int(input("请输入要生成的斐波那契数列的长度:"))
fib_list = []
for i in range(n):
fib_list.append(fibonacci(i))
print(f"斐波那契数列的前{n}个数为:{fib_list}")
```
这个程序通过递归的方式计算斐波那契数列的第n项。首先定义了一个名为`fibonacci`的函数,该函数以`n`为参数,如果`n`小于等于1,则返回`n`。否则,递归调用`fibonacci`函数,计算`n-1`和`n-2`两项的和作为结果返回。
在主程序中,首先要求用户输入要生成的斐波那契数列的长度。然后通过循环调用`fibonacci`函数,生成斐波那契数列的前n项,并依次添加到一个列表中。最后,打印出斐波那契数列的前n个数。
阅读全文