-1
ユーザーの入力データが希望の範囲内にあるかどうかを確認しようとしています。これまでのところ、私はこのようにそれを持っている:彼らは数1未満または5より大きいと入力した場合ifステートメントで配列データをチェックしようとしています
void getPlayersNumbers(int playerArray[], int size) {
cout << "Please enter 5 numbers between 1-5\n";
for (int i = 0; i < size; i++) {
cin >> playerArray[i];
if (playerArray[i] < 1 || playerArray[i] > 5) {
cout << "Please enter numbers between 1 and 5\n";
}
}
}
は今のメッセージが表示されます。唯一の問題は、それらのうちの1つが範囲外でメッセージが表示されても、5つの数字の合計を入力できることです。自分の設定した範囲内にある5つの数字を入力すると機能が終了するだけなので、どうすればいいですか?
(HTTPS [あなたのゴム製のアヒルに、あなたのコード内のロジックを説明する]試してみてください5
代わりに、固定の 'for'ループではなく' while'を使用し、正しい入力だけのためのカウンタを使用してください。 – usr2564301
番号が範囲外である場合、プログラムは再度番号を要求する必要があります。これを行うには、ループ本体を、適切な範囲の数値を要求して返す関数への呼び出しで置き換えます。関数はループを使用してOK番号が得られるまで繰り返し呼び出します。 –