本题要求编写程序,计算序列 1 + 1/3 + 1/5 + ... 的前N项之和。
输入格式:
输入在一行中给出一个正整数N。
输出格式:
在一行中按照“sum = S”的格式输出部分和的值S,精确到小数点后6位。题目保证计算结果不超过双精度范围。
输入样例:
23
输出样例:
sum = 2.549541
方法一:
a = int(input())
x=0
for b in range(a):
c = 1/(1+2*b)
x += c
print("sum={0:.6f}".format(x))
这种方法用了for语句,相对来说简单一点
方法二:
a = int(input())
x=0
y=1
b=0
while (b<a):
c = 1/y
x += c
y += 2
b += 1
print("sum={0:.6f}".format(x))
while语句也是可行的,只是为了和上面区分,人为地细分了一下,显得语句有些多