我的節目就是我試圖使應該用C使用PI系列近似PI = 4 *(1 - (1/3)+(1/5) - ( 1/7)+(1/9) - (1/11)...)等等。現在For循環在C
,通過命令行,程序必須輸入項的量來近似出來,例如,如果有人在命令行估算將外出(1/9)進入5。
的問題是,我總是輸出零產量,而我不能確定我做了邏輯上的錯誤。但我相信這是一個for循環問題。其他
一個說明,我使用C,而不是C++。
我的代碼是:
/*
Finding pi of an infinite series
*/
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
int main(int argc, char *argv[]){ //need to get input for amount of terms
int i, pi;
pi = 0;
i = 0;
double neg; //neg to make a number negative
neg = -1;
for(i = 1; i < argc; i++)
{
pi = pi + pow(neg, i)*(1/((2*i)-1));
i = i + 1;
}
printf("The approximation of pi is: %lf", pi);
return 0;
}
注:由於某種原因,它沒有顯示我包括堆棧溢出的庫。我確實包括了這些庫,我並不是那麼愚蠢。
最近這成爲一個常見問題。 – chris
你沒有理由在這裏使用'pow',你可以'neg * = -1'。 – KAction