私が作成しようとしているプログラムは、級数pi = 4 *(1-(1/3)+(1/5)-(1/7)+(1/9)-( 1/11)...)など。
ここで、プログラムはコマンドラインから概算する項の量を入力する必要があります。たとえば、誰かがコマンドラインから5を入力すると、見積もりは(1/9)になります。
問題は、出力が常にゼロになり、発生した論理エラーを判別できないことです。ただし、これはforループの問題だと思います。
もう1つの注意点として、私は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;
}
注:何らかの理由で、StackOverflowに含めているライブラリが表示されません。私はライブラリを含めました、私はそれほど馬鹿ではありません。