编写计算第n 个斐波纳契数的Python程序
时间: 2024-05-30 15:15:33 浏览: 3
def fibonacci(n):
if n == 0:
return 0
elif n == 1:
return 1
else:
return fibonacci(n-1) + fibonacci(n-2)
print(fibonacci(10)) # 输出第10个斐波纳契数,结果为55
相关问题
非递归输出斐波那契数列编程计算第n个数
以下是使用Python编写的非递归程序,计算第n个斐波那契数:
```python
def fibonacci(n):
if n == 0:
return 0
elif n == 1:
return 1
else:
a, b = 0, 1
for i in range(2, n + 1):
c = a + b
a = b
b = c
return b
# 测试程序
print(fibonacci(0)) # 0
print(fibonacci(1)) # 1
print(fibonacci(2)) # 1
print(fibonacci(3)) # 2
print(fibonacci(4)) # 3
print(fibonacci(5)) # 5
print(fibonacci(6)) # 8
```
该程序使用循环迭代计算斐波那契数。首先检查零和一的情况,并使用两个变量a和b,将它们初始化为0和1。从第2个斐波那契数开始,循环迭代并计算下一个斐波那契数,直到达到所需的n。最后,返回b作为结果。
编写一个Python程序,使用递归函数输出斐波那契数列前n项
好的,以下是Python程序,使用递归函数输出斐波那契数列前n项:
```python
def fibonacci(n):
if n <= 1:
return n
else:
return (fibonacci(n-1) + fibonacci(n-2))
n = int(input("请输入要输出斐波那契数列前几项:"))
if n <= 0:
print("输入的数必须大于0")
else:
print("斐波那契数列前", n, "项为:")
for i in range(n):
print(fibonacci(i), end = " ")
```
在这个程序中,我们首先使用一个递归函数来计算斐波那契数列的第n项。递归函数的定义是:当n小于或等于1时,返回n;否则,返回前两项的和(即n-1和n-2的斐波那契数之和)。接着,我们要求用户输入要输出的斐波那契数列前几项,如果输入的数小于等于0,则打印出错误信息。否则,我们使用一个for循环来迭代输出斐波那契数列的前n项。