请问为什么用这个编码解决不了斐波那契数列,运行出来就是打出数字就是数字几?
def fib(i):
if i == 1 or i == 2:
return 1
else:
return fib(i-1)+fib(i-2)
n = int(input("输入你要得到项:"))
print('第%d项为%d' % (n,fib(n)))
斐波那契函数实现:
def fab(n):
if n < 1:
print("输入错误")
return -1
if n == 1 or n== 2:
return 1
else:
return fab(n-1)+fab(n-2)
print(fab(5))