本题要求编写程序,计算交错序列 1-2/3+3/5-4/7+5/9-6/11+... 的前N项之和。
输入格式:
输入在一行中给出一个正整数N。
输出格式:
在一行中输出部分和的值,结果保留三位小数。
输入样例:
5
输出样例:
0.917
方法一:
a = int(input())
c=0
x=0
y=1
for b in range(a):
c = (1+1*b)/(1+2*b)
x += c*y
y = -y
print("{0:.3f}".format(x))
通过负负得正的方法,每次循环的时候改变一次y的正负,就能加一次减一次
方法二:
a = int(input())
x = 0
for b in range(a):
if b % 2 != 0:
x -= (1+1*b)/(1+2*b)
else:
x += (1+1*b)/(1+2*b)
print("{:.3f}".format(x))
也可以通过if语句判断单复数进行加减