私のコードがどこに間違っているか調べるのに助けが必要です。私は出力が現在の計算で過去の入力値を使用しているのに対し、コードを実行しているときには出力が毎回異なるようにコンパイルしないようにループの値をリセットしたい。 whileループを使用しないときはコードが正常に動作しますが、そのたびにプログラムを再実行する必要があります。私は毎回新しい入力を促す出力をしたいが、新しい計算の過去の入力を使用しない。私はそれをとてもうまく説明していないことを知っているが、私は一種の失われている。何か助けて! 1/3 + 1/5 - - 1forループの値をリセットするには?
PI = 4・[1:PIの近似値は以下 を与えシリーズを使用して計算することができる
:
これは私の問題です/ 7 + 1/9 ... +(-1^n)/(2n + 1)]
このシリーズの を使用して、piの近似値を計算するC++プログラムを作成します。プログラムは、PIの値の近似値における用語の数 を決定し、近似値を出力する入力Nを取ります。ユーザーが新しい値のため、この 計算を繰り返すことができますnは、ユーザは言うまで彼女または彼は プログラムを終了したいループを含めます。
#include <cstdio>
#include <iostream>
using namespace std;
int main()
{
int n;
double sum=0;
cout << "Enter the number of terms to approximate (or zero to quit):\n";
cin >> n;
if (n == 0)
{
return 0;
}
while (n != 0)
{
{ for(int i=0;i<n;i++)
{
if (i%2==0)
{
sum += 1.0/(2*i+1);
}
else
{
sum += -1.0/(2*i+1);
}
}
cout.setf(ios::showpoint);
cout.precision(3);
cout << "The approximation is " << sum*4 << " using " << n << " terms." << endl;
}
cout << "Enter the number of terms to approximate (or zero to quit):\n";
cin >> n;
}
return 0;
}
これが私の出力です:
これは出力がどうあるべきかされています