实验4-1-8 求给定精度的简单交错序列部分和 (15 分)

本题要求编写程序,计算序列部分和1 - 1/4 + 1/7 - 1/10 + ... 直到最后一项的绝对值不大于给定精度eps

输入格式:

输入在一行中给出一个正实数eps

输出格式:

在一行中按照“sum = S”的格式输出部分和的值S,精确到小数点后六位。题目保证计算结果不超过双精度范围。

输入样例1:

4E-2

输出样例1:

sum = 0.854457

输入样例2:

0.02

输出样例2:

sum = 0.826310

代码:

# include <stdio.h>
# include <stdlib.h>

int main() {
    
    
	double eps,sum = 0.0,value,sign = 1.0;
	scanf("%lf",&eps);
	int i = 1;
	while(1) {
    
    
		value = sign / i;
		if (value < 0 && value + eps >= 0 || value > 0 && value - eps <= 0) {
    
    
			sum += value;
			break;
		}else {
    
    
			sign *= (-1);
			i += 3;
			sum += value;
		}
	}
	printf("sum = %.6lf",sum);
	return 0;
}

提交截图:

在这里插入图片描述

解题思路:

和之前的难度以及思路差不多,没啥好说的了!

猜你喜欢

转载自blog.csdn.net/weixin_43862765/article/details/114478309