Python:第2章-6 求交错序列1-2/3+3/5-4/7+5/9-6/11+...前N项和 (15分)

本题要求编写程序,计算交错序列 1-2/3+3/5-4/7+5/9-6/11+… 的前N项之和。

输入格式:

输入在一行中给出一个正整数N。

输出格式:

在一行中输出部分和的值,结果保留三位小数。

输入样例:

5

输出样例:

0.917

代码实现:

1、利用标志和负负得正原理:

n = int( input() )
sum = 0
flag = 1
for i in range(1, n + 1):
    sum += float(i) / (i * 2 - 1) * flag
    flag = -flag
print("%.3f" % sum)

2、利用下标判断奇偶:

n = int( input() )
sum = 0
for i in range(1, n + 1):
    if i % 2 == 0:
        sum += float(i) / (i * 2 - 1)
    else:
        sum += -float(i) / (i * 2 - 1)
print("%.3f" % abs(sum))

你可能感兴趣的:(PTA,-,Python的习题答案,python,算法)