def fib(n):
if n<0:
print("Error")
return 0
if n==0:
return 0
if n==1 :
return 1
else:
return fib(n-1) + fib(n-2)
ls=[]
for i in range(0,n+1):
ls.append(fib(n))
for x in ls:
print(x)
n = int(input())
fib(n)
这个我自己写的,我觉得从逻辑上来说好像没问题,但我不知道问题出在哪里
这是看了别人的
def fib(n):
#n = int(input())
n1=0
n2=1
s=2
if n<=0:
print("Error")
elif n==1:
print(n1)
else:
print("0\n1")
while s<n:
nth=n1 + n2
print(nth)
n1=n2
n2=nth
s=s+1
n = int(input())
fib(n)