输入格式:
输入在一行中给出精度e。
输出格式:
对每一组输入,在一行中输出π的近似值。
输入样例:
0.0001
结尾无空行
输出样例:
pi = 3.141793
结尾无空行
编写代码
#include<stdio.h>
double funpi ( double e );//声明函数
int main()
{
double e;//给出精度e
scanf ( "%lf" , &e );//输入e的值
printf ( "pi = %.6f" , 4*funpi(e) );//按照题目要求打印 打印的值为4倍的funpi(e)函数
return 0;
}
double funpi ( double E )//定义funpi()函数
{
double pi = 0,deno = 1,sign = 1;//pi为派的值 deno是分母(denominator)的缩写 sign是当前项的正负值
for ( ; ; )//本文使用for函数 事实上完全可以用do while代替
{
pi += sign / deno;//每项相加
sign *= (-1.0);//隔项变号
deno += 2;//分母隔项自加2
if ( 1 / ( deno - 2 ) < E )//对于精度绝对值小于e的表述
{
break;//如果精度小于e 则跳出循环
}
}
return pi;//返回pi值
}