c語言 求的近似值,C語言 求 的近似值

時間 2021-07-01 01:12:19

1樓:無情天魔精緻

用g++編譯器

//圓周率的計算方法!(能精確到800多位)#include

const int n=2800,a=10000;

int c=n,e=0,f[n+10];

int main()

int digit=e+d/a;

if (digit==3141)

else if (digit<10)printf("000");

else if (digit<100) printf("00");

else if (digit<1000) printf("0");

printf("%d",digit);

e=d%a;

c-=14;

}getchar();

} //圓周率的計算方法!(能精確到800多位)#include

const int n=2800,a=10000;

int c=n,e=0,f[n+10];

int main()

int digit=e+d/a;

if (digit==3141)

else if (digit<10)printf("000");

else if (digit<100) printf("00");

else if (digit<1000) printf("0");

printf("%d",digit);

e=d%a;

c-=14;

}getchar();}

2樓:匿名使用者

因為你的標題都說是求pi的近似值,所以不標準啊。

補充:你比較一下第一個和第二個,第一個裡面deno第一項中是1,第二個裡面deno第一項是3,這明顯不一樣啊

3樓:匿名使用者

printf("%10.8lf\n",4*sum);這段,裡面的浮點型精準度到多少位不夠,所以後面無法得出正確結果

浮點型小數點後面有效數字為6~7位

雙精度浮點型小數位後有效位數15~16位。

明白了吧

c語言程式設計,計算π的近似值

4樓:匿名使用者

演算法錯誤。程式思路非常混亂。n++只一次,並沒有迴圈,那麼一開始計算x0時n=1,以後每次計算x0的值時n都等於2。而計算公式是要對n進行累加迴圈的。

#include

void main()

5樓:寒寒家

fabs=(1/(i+i+2)); 這裡應該是*號

另外這裡涉及到整形數字,最好還是把其中所有的1,2都寫成1.0, 2.0

6樓:匿名使用者

int n=1, t=2 應該改為float n=1, t=2。整型時t-(4*n*n)/(4*n*n-1)的結果為整形。

7樓:

#include

#include

int main()

sum=sum*4;

printf("%10.8f\n",sum);

system("pause");

return 0;

}輸出結果為:3.14159369

8樓:匿名使用者

樓主你好!

錯誤一:while(t-(4*n*n)/(4*n*n-1))>=1e-6)裡面少了一個左括號;

錯誤二:主要你是float和int混合在一起計算,特別你到了t-(4*n*n)/(4*n*n-1)和 t=(4*n*n)/(4*n*n-1);這兩步,相當有問題,結果並不是你想象那樣是個帶6位的小數,而是得到整數!第一次n=1時候;t-(4*n*n)/(4*n*n-1)=1條件成立,所以進入迴圈,a=2.

000000,當t=(4*n*n)/(4*n*n-1),計算後t為1,,n++為2;第二次到t-(4*n*n)/(4*n*n-1)=0,條件不成立,跳出迴圈,所以為什麼a為2.000000原因!

下面是我改了的!

#include

int main()

printf("%f ",a);

}結果為3.131604

算是接近π吧,偏差的原因,我估計是float精確到小數後六位,上面的多次迴圈,導致最後偏差有點大,我是這樣想的!

求大家指正!

9樓:篤俠

sum=sum+d/i;

改為sum=sum+1.0*d/i;試試。

c語言程式設計,求π的近似值

10樓:聽不清啊

#include

#include

int main()

int x,z;

float y;

y=0;

z=0;

for(x=1;fabs(1.0/x)>1e-6;x+=2)z=z+1;

if(z%2!=0)

y=y+1.0/x;

else

y=y-1.0/x;

y=y*4;

printf("π=%10.6f\n",y);

return 0;

用c語言求π的近似值

11樓:沈奕浪

迴圈體裡面的公式有點問題,我重新寫了一下,**如下:

void main()

printf("pi=%f\n",pi* 4);

system("pause");

}注意輸出的結果是pi*4,望採納!

12樓:金色潛鳥

#include

#include

int main ()

printf("pi=%f",pi*4.0);

return(0);

}係數用 k = -k; 的方法變化,不用 pow() .

這個級數收斂慢。注意結果的 pi 要乘 4。

c語言 求π的近似值

13樓:聽不清啊

term沒有初始值。

temp若是int,則程式中的計算將永遠是1。以下是修改後的程式及運**況:

14樓:安徽新華電腦專修學院

term有初始值嗎????上來就while term>=1.00001???

c語言程式題——求π的近似值

15樓:匿名使用者

for(n=1;n<=500;n++)中,n<=500不夠大,n值越大,pi近似值越準確

c語言,cos近似值計算,C語言求cos精確值 泰勒公式

你應該把di 1.0放在do while迴圈裡面開始處。修改後結果正確,程式如下 include stdio.h include math.h double funcos double e,double x int main void double funcos double e,double x ...

微分求近似值,高數,用微分求近似值,詳細過程,謝謝哦

凌白亦果珏 記函式y arctan x 那麼其微分 dy dx 1 x 注意1.02 1 0.02 x x,求對應x 1處,x dx 0.02對應的增量 y,根據微分定義 y arctan 1 4 y dy dx 1 x 0.02 1 1 0.01arctan 1.02 y y y dy 4 0.0...

如何求近似值,二年級怎麼求近似數?

娛樂大潮咖 求近似值可取的方法 四捨五入法 進一法 退一法 去尾法 牛頓法。1 四捨五入法 根據要求,要省略的尾數的最高位上的數字小於或等於4的,就直接把尾數捨去 如果尾數的最高位數大於或等於5,把尾數捨去後並向它的前一位進 1 即滿五進一。這種取近似數的方法叫做四捨五入法。如 把 3.15482 ...