用python编写程序条件如下给定输入k(k>=0,自然数),计算斐波那契数列第项。例如输入4,程序应输出3。
def fib(x):
a = 1
b = 1
if x == 1:
return 1
elif x == 2:
return 1
i = 0
num = 0
while(i<x-2):
num = a+b
a = b
b = num
i += 1
return num
a = int(input())
print(fib(a))
你题目的解答代码如下:
k = int(input("请输入一个整数:"))
a=0
b=1
for i in range(k):
t=a+b
a=b
b=t
print(a)
如有帮助,请点击我的回答下方的【采纳该答案】按钮帮忙采纳下,谢谢!
注意题目要求 k>=0, 设置为参数小于1,都返回0
def f(n):
f1,f2 = 0,1
for _ in range(n):
f1,f2 = f2,f1+f2
return f1
k = int(input())
print(f(k))