天天看點

近似值計算

計算1-1/3+1/5-1/7+........,直到最後一項小于10^-6

代碼如下:

代碼一:

#include<stdio.h>

#include<stdlib.h>

int main()

{

double sum = 0;

for (int i = 0;; i++)

{

double s = 1.0 / (i * 2 + 1);

if (i % 2 == 0)

{

sum += s;

}

else

{

sum -= s;

}

if (s< 1e-6) break;

}

printf("%.6f\n", sum);

system("pause");

}

代碼二:

#include<stdio.h>

#include<stdlib.h>

int main()

{

double sum = 0;

int sign = 1;

for (int i = 0;; i++)

{

double s = sign*1.0 / (2 * i + 1);

sum +=s;

sign = -sign;

if (1.0 / (2 * i + 1) < 1e-6)

{

break;

}

}

printf("%.6f", sum);

system("pause");

}

基本一樣隻不過是想練一下