def fib(n):
a, b = 1, 1
for i in range(n-1):
a, b = b, a+b
return a
def get_res(x):
sum_a = 0
for item in range(3, x+3):
a = fib(item) / fib(item-1)
sum_a += a
return sum_a
res = get_res(5)
print(res)
用一个变量保存上一个运算结果,然后再去算下一个斐波那契数
def num(n):
n1=1
n2=2
s=0
while n>0:
n-=1
s+=n2/n1
n1,n2=n2,n1+n2
return s
n=eval(input())
if n<=0:
print('n输入错误')
else:
print('前{}项的累加和为{:.2f}'.format(n,num(n)))
def fibonacci(n):
if n <= 2:
return n
else:
return (fibonacci(n - 1) + fibonacci(n - 2))
def sumfib(n):
if n == 1:
return 2 / 1
else:
return (fibonacci(n+1) / fibonacci(n)) + sumfib(n-1)
sumfib(3)