用pi/4=1-1/3+1/5-1/7+....来求PI的近似值,(简单,给分)
用pi/4=1-1/3+1/5-1/7+....来求PI的近似值,
可为什么,在用float fenmu=1.0声明时就可以计算正确,
可改用int fenmu=1声明就会出现误差。
#include <math.h>
main()
{
float fenshu=1,sum=0,fenmu=1.0;/*fenshu为分数值,sum为累加,fenmu为分母*/
int fenzi=1; /* fenzi为分子*/
while(fabs(fenshu)>=1e-6)
{
sum=sum+fenshu;
fenmu=fenmu+2;
fenzi=-fenzi;
fenshu=fenzi/fenmu;
}
sum=sum*4;
printf("pi=%f\n",sum);
}