2015-09-04 28 views
0

我写了一个c + +程序来计算pi使用pi/4的无限扩展。我用了很长的双倍但仍然是pi = 3.14158。额外的十进制数字在哪里被切掉。如何纠正? 所以这是我的代码:结果是只有5位小数,即使长双(在c + +)

#include<iostream> 
#include<math.h> 
using namespace std; 

int main(void) 
{ 
    long double pi=1,si,i; 

    for(i=1;i<100000;i++) 
    { 
     si = (pow(-1.0 ,i))/(2*i+1); 
     pi += si; 
    } 

    pi*=4.0; 
    cout<<" "<< pi <<" \n "; 
} 
+0

'std :: cout'正在削减额外的小数。 – Praveen

回答

0

您的问题这里就不计算数量的实际精度,但在你的显示输出的格式。详情请查询this答案。