输入精度e,使用格雷戈里公式求π的近似值,精确到最后一项的绝对值小于e。要求定义和调用函数funpi(e)求π的近似值。
4/π=1−1/3+1/5−1/7+...
输入格式:
输入在一行中给出精度e。
输出格式:
对每一组输入,在一行中输出π的近似值。
输入样例:
0.0001
输出样例:
pi = 3.141793
#include<stdio.h>
#include<math.h>
double funpi(double e);
int main()
{
double pi,e;
scanf("%lf",&e);
pi=funpi(e);
printf("pi = %lf",pi);
return 0;
}
double funpi(double e)
{
double x,sum=0;
int n=1,flag=1;
do{
x=1.0*flag/n;
sum=sum+x;
flag=-flag;
n=n+2;
}while(fabs(x)>=e); //分号!!!
return sum*4;
}