近似值求PI
输入格式:
输入在一行中给出精度eps,可以使用以下语句来读输入:
scanf("%le", &eps);
输出格式:
在一行内,按照以下格式输出π的近似值(保留小数点后5位):
PI = 近似值
输入样例:
1E-5
结尾无空行
输出样例:
PI = 3.14158
结尾无空行
#include
double jc(int n);
double f(int n);
double s(double eps);
int main()
{
double eps;
scanf("%le",&eps);
printf("PI = %.5fn",s(eps)*2);
return 0;
}
double jc(int n) //阶乘函数
{
double f=1,i;
for(i=1;i<=n;i++)
{
f=f*i;
}
return f;
}
double f(int n) //分数下半部分规律函数
{
double f=1,i;
for(i=1;i<=n;i++)
{
f=f*(2*i+1);
}
return f;
}
double s(double eps) //等式整体表达式
{
double sum=0,t;
int i;
i=0;
while(1)
{
t=jc(i)/f(i);
sum=sum+t;
if(t