描述
1-1/2+2/3-3/5+4/8-5/13+...的前n项和,n由用户输入(n>0),结果用str.format()方法保留小数点后6位数字输出。
s=eval(input())
sum=0
def f(s):
if s==1:
return 2
elif s==2:
return 3
else:
return f(s-2)+f(s-1)
for i in range(1,s):
if i%2==0:
fenzi=i
else:
fenzi=-i
sum=sum+fenzi/f(i)
sum=sum+1
print('{:.6f}'.format(sum))