从键盘输入整数n,并求斐波那契数列的第n项值,并调用输出。要求循环实现和自定义递归函数实现。
时间: 2024-02-03 20:15:17 浏览: 82
在键盘上输入一个3行3列矩阵的各个元素的值(值为整数),然后输出矩阵第一行与第三行元素之和,并在fun()函数中输出
5星 · 资源好评率100%
循环实现:
```python
n = int(input("请输入一个正整数n:"))
# 循环实现
if n <= 0:
print("输入错误!")
else:
a, b = 0, 1
for i in range(n-1):
a, b = b, a+b
print("斐波那契数列的第{}项值为:{}".format(n, b))
```
自定义递归函数实现:
```python
def fibonacci(n):
if n <= 0:
return 0
elif n == 1:
return 1
else:
return fibonacci(n-1) + fibonacci(n-2)
n = int(input("请输入一个正整数n:"))
# 递归实现
if n <= 0:
print("输入错误!")
else:
res = fibonacci(n)
print("斐波那契数列的第{}项值为:{}".format(n, res))
```
注意,在使用递归函数实现斐波那契数列时,由于递归函数的调用次数较多,可能会导致程序运行速度较慢。因此,在实际应用中,一般采用循环实现。
阅读全文