读书人

一个比较弱智的有关问题

发布时间: 2012-03-20 14:01:11 作者: rapoo

一个比较弱智的问题
void main()
{
double sum=0;
int i=1;
while(fabs(1/i)>1e-6)
{
sum+=1/i;
i=-(i+2);
}
printf("%.2f",4*sum);
}
这个程序为什么不能实现计算pai?
是不是必须将中间的两步写成:
pi+=t;
n+=2;
s=-s;
t=s/n;

[解决办法]
2个问题,1个是i=-(i+2)的叠加不对,会使i在1和-3之间不断循环,还有就是i要设置成float,或者1.0/i

读书人网 >C++

热点推荐