/*C語言 用萊布尼茲公式估算π*/
#include<stdio.h>
#include<stdlib.h>
double Leibniz(int);
/*宣告函數Leibniz()的原型*/
double power(double, int);
/*宣告power()的原型*/
int main(void)
{
int i;
for (i = 1; i <=10000; i++) /*找出前10000個π的估算值*/
{
printf("Leibniz(%d)=%12.10f\n", i, Leibniz(i));
}
system("pause");
return 0;
}
double Leibniz(int i) /*Leibniz()函數,可估算到π值到第i項*/
{
int j;
double k=0.;
for (j = 1; j <= i; j++)
{
k = k+power(-1.0, j - 1) / (2 * j - 1); /*萊布尼茲公式*/
}
return k*4;
}
double power(double n, int o)
/*power()函數,可計算n的o次方*/
{
int p;
double q=1.0;
for (p = 1; p <= o; p++)
{
q *= n;
}
return q;
}
結果為:
.
.
.
如果覺得算太久可以壓Ctrl+c離開唷!!!
留言列表