2 qq 34418970 qq_34418970 于 2016.04.21 13:17 提问

求PI,为什么结果不对,还是逻辑上是错的?
c#

double n=3;
double PI;
double s=1/n;
double sum=1/3;
do
{

           sum = sum + s;
            n = n + 2;
            PI = 4 *(1-sum);
        }
        while (s < 0.000001);
        Console.WriteLine(PI);*/

1个回答

danielinbiti
danielinbiti   Ds   Rxr 2016.04.21 13:34
先理解算法
 double n=3;
            double PI;
            double s=1/n;
            int i = 1;
            double sum=1;
            do
            {
                i = i * -1;
                s = 1 / n; 
                sum = sum + s*i;
                n = n + 2;
            }
            while (s > 0.000001);
            PI = 4 * sum;
            Console.WriteLine(PI);
qq_34418970
qq_34418970 想了好久,还是想不明白,自己的意识上感觉是对的,还有题目上不是说1/n<0.000001时停止计算?
一年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!