7-56 求給定精度的簡單交錯序列部分和 (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<math.h>
int main()
{
double eps;
scanf("%lf",&eps);
double sum=0;
double s;
s=1;
int count=1;
int flag=1;
//while(fabs(s)>eps)
do
{
s=1.0/(3*count-2);
sum+=s*flag;
flag=-flag;
count++;
}while(fabs(s)>eps);
printf("sum = %.6f\n",sum);
return 0;
}