0または1の値を持つことができる3つの整数変数があります。すべてが0またはすべてが1の場合、特定のステートメントを出力します。他のすべての値の組み合わせについては、別のステートメントを出力します。
私はうまくいく以下を試しました。ifステートメントを書くためのより良い方法はありますか?
#include <iostream>
using namespace std;
int main()
{
int a, b, c;
cin >> a >> b >> c;
if(!(a != 0 && b != 0 && c != 0) && !(a == 0 && b == 0 && c == 0))
{
cout << "a, b or c have mixed values of 1 and 0" << endl;
}
else
{
cout << "All of a, b and c are either 1 or 0" << endl;
}
system("pause");
return 0;
}
混乱を招いて申し訳ありません。簡単な例として挙げたので、実際には上記のコードで課されたa、b、cの値のチェックはありません。ifステートメントは、a、b、およびcがすべて等しいかどうかをチェックするものではありません。それらすべてが0または1の整数値(ブール値ではない)であるかどうかを確認することです。