2015-09-04 33 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答案。