题目:
使用
这个公式求π的近似值,直到某一项的绝对值小于10-6为止。
分析:
等式左边为/4,右边为有规律吧的求和,采用循环解决。注意到,每个分式的正负都发生了变化,故将符号分离出来用sign变量存储。
代码:
#include<stdio.h>
#include<math.h>
int main(){
double Pi=0.0,next=1.0,n=1.0; /*next为下一项分式的结果,初始从1.0开始,n为分母,为了保证不被整除截断,设置为了double型*/
int sign=1; //符号位,也作为分子
while(fabs(next)>=1e-6){ //满足题意的终止条件
Pi+=next; //累加求和
n+=2; //每个分式分母的变化规律
sign=-sign; //符号位的变化
next=sign/n; //下一个分式
}
printf("%.5lf",Pi*4); //输出结果,注意要乘以4
return 0;
}
测试:
样例输出:3.14159