【C++言語】if文の基本と応用
if文とは
C++における「if文」は、条件を評価してその結果に応じて特定の処理を実行するための制御構文です。プログラムにおいて、条件が真(true)のときにのみ実行される処理を記述するために使用されます。
「if文」は、以下の構文で表現されます:
if (条件式) { // 条件式が真(true)のときに実行する処理 }
条件式は、比較演算子や論理演算子を使って指定します。この条件式が「真」の場合、波括弧内の処理が実行されます。「偽」の場合は、何も実行されません。
if文の基本的な使い方
例えば、以下のように変数xが0より大きい場合にメッセージを表示するプログラムを作成できます。
#includeusing namespace std; int main() { int x = 5; if (x > 0) { cout << "xは0より大きいです。" << endl; } return 0; }
このコードでは、xが0より大きい場合に「xは0より大きいです。」と表示されます。もしxが0以下の場合、何も表示されません。
else文との使い方
「if文」の後に「else文」を追加することで、条件が偽(false)だった場合に別の処理を実行することができます。以下はその例です。
#includeusing namespace std; int main() { int x = -3; if (x > 0) { cout << "xは0より大きいです。" << endl; } else { cout << "xは0以下です。" << endl; } return 0; }
この場合、xが-3なので条件式「x > 0」は偽となり、else文の処理が実行され、「xは0以下です。」が表示されます。
else if文の使い方
「else if文」を使用すると、複数の条件を順番にチェックすることができます。これにより、複数の異なる条件に基づいて処理を切り替えることができます。
#includeusing namespace std; int main() { int x = 10; if (x > 10) { cout << "xは10より大きいです。" << endl; } else if (x == 10) { cout << "xは10です。" << endl; } else { cout << "xは10より小さいです。" << endl; } return 0; }
この場合、xの値が10なので、最初のif文は偽となり、次に「else if (x == 10)」が真となり、その結果「xは10です。」と表示されます。
if文のネスト
「if文」を他の「if文」の中に入れることができます。これを「if文のネスト」と言います。複雑な条件を設定したい場合に使用されます。
#includeusing namespace std; int main() { int x = 5; int y = 10; if (x > 0) { if (y > 5) { cout << "xは0より大きく、yは5より大きいです。" << endl; } } return 0; }
このコードでは、xが0より大きく、かつyが5より大きい場合に「xは0より大きく、yは5より大きいです。」と表示されます。もしどちらか一方が条件を満たさない場合、何も表示されません。
複数の条件を使う
複数の条件を使いたい場合、論理演算子(AND, ORなど)を使って結合することができます。以下はAND演算子(&&)を使った例です。
#includeusing namespace std; int main() { int x = 8; int y = 12; if (x > 5 && y < 15) { cout << "xは5より大きく、yは15より小さいです。" << endl; } return 0; }
この場合、xが5より大きく、かつyが15より小さいので、条件式が真となり、「xは5より大きく、yは15より小さいです。」と表示されます。
同様に、OR演算子(||)を使ってどちらか一方の条件が真の場合に実行するようにもできます。
#includeusing namespace std; int main() { int x = 3; int y = 20; if (x < 5 || y > 10) { cout << "xは5より小さいか、yは10より大きいです。" << endl; } return 0; }
この場合、xは5より小さいので、条件式が真となり、「xは5より小さいか、yは10より大きいです。」と表示されます。