getval()の中かっこで機能エラーまたは条件エラーが発生するwhileループの条件が原因である可能性がありますが、エラーの理由を教えてください。 この質問には5つのテストを入力する必要があります0から100までの間でなければならないユーザーからの得点で、getval()でdo whileループに条件を含める理由です。do whileループを除外してプログラムを正常に実行すると、エラーの理由を教えてください。機能または条件エラー
#include <iostream>
using namespace std;
int sub1, sub2, sub3, sub4, sub5, lwst;
void getval()
{
do{
cin >> sub1;
cin >> sub2;
cin >> sub3;
cin >> sub4;
cin >> sub5;
} while ((sub1 < 101 && sub1 >= 0) &&
(sub2 < 101 && sub2 >= 0) &&
(sub3 < 101 && sub3 >= 0) &&
(sub4 < 101 && sub4 >= 0) &&
(sub5 < 101 && sub5 >= 0)
)
}
int findlowest()
{
int s1 = sub1;
int s2 = sub2;
int s3 = sub3;
int s4 = sub4;
int s5 = sub5;
int temp = 0;
while (s1&&s2&&s3&&s4&&s5)
{
s1--;
s2--;
s3--;
s4--;
s5--;
temp++;
}
return temp;
}
void calavg()
{
cout << "average is " << (sub1 + sub2 + sub3 + sub4 + sub5 - lwst)/4;
}
int main()
{
cout << "enter the test score , marks from 0 to 100\n";
getval();
lwst = findlowest();
calavg();
return 0;
}
*何*エラー?必ず、エラーメッセージを含めてください。また、コードを適切にインデントして、それをよりよくフォローすることも可能です。 –
'getval'のあなたのwhile-conditionの最後の閉じ右括弧の後にセミコロンがありません。 IOエラーも完全に無視していますが、これは別の問題です。 – WhozCraig
このコードはグローバル変数で詰め込まれていますが、[ゼロ、1または無限大](https://en.wikipedia.org/wiki/Zero_one_infinity_rule)に違反しています。関連することが意図されている場合は、それらの整数値に 'std :: vector'を使用してください。 – tadman