本题要求编写程序,计算序列部分和 1 - 1/4 + 1/7 - 1/10 + ... 直到最后一项的绝对值不大于给定精度eps。 输入 输入在一行中给出一个正实数eps。 输出
时间: 2023-10-20 19:06:13 浏览: 93
求数列4*(1-1/3+1/5-1/7·····)的值,直到最后一项的绝对值小于10的负6次方为止
5星 · 资源好评率100%
输出序列部分和,保留小数点后5位。
我们可以使用while循环,不断累加序列中的每一项直到绝对值小于eps为止。具体实现如下:
eps = float(input()) # 输入给定精度
sum = 0.0 # 初始化部分和为0.0
n = 0 # 序列的下标,从0开始
while True:
# 计算当前项的值
a = (-1)**n / (3*n+1)
# 判断绝对值是否小于eps
if abs(a) < eps:
break
# 否则累加到部分和中
sum += a
# 下标自增1
n += 1
print('%.5f' % sum) # 输出结果,保留小数点后5位
阅读全文