↓↓クリックして頂けると励みになります。
【04 | データ型と2項演算子】 << 【ホーム】 >> 【06 | for】
C++のif文は、条件に基づいてプログラムの実行フローを制御するための制御構造です。
if文は、指定された条件が真(true)であるかどうかを評価し、その条件が真の場合には特定のブロック内のコードが実行されます。
条件が偽(false)である場合、if文のブロック内のコードはスキップされます。
さらに複数の条件をチェックする場合や、条件が多数の場合には、else if句を使用して複数の条件分岐を行うことができます。
if文を使用することで、プログラムの実行フローを条件に基づいて制御することができます。
条件が満たされるかどうかによって、特定のコードブロックを実行するかスキップするかを決定できます。
Visual Studio Codeで以下のcppファイルを作成して下さい。
新規作成 【IfTest1.cpp】
#include <iostream> int main() { int a; a = 3; if ( a > 0) { std::cout << "a > 0" << std::endl; } }
このサンプルプログラムでは「if文」とよれる構文を使用しています。
「もし〜なら〜」という条件判断ができます。
if ( 条件 ) { 実行文; }
ifのあとの括弧の中に条件が入ります。
このプログラムでの条件は(a > 0)
です。
変数aが、0より大きければ、このif文の中に記述されている実行文が処理されます。
このプログラムでの実行文は「std::cout << "a > 0" << std::endl;
」です。
変数 aには3が入っていて0より大きい値なので実行文が処理されます。
その結果、「a > 0
」がターミナルに表示されます。
もし「a=3-5;
」のように変数の値を書き換えれば条件に当てはまらず、何も実行されずにプログラムは終了します。
ではプログラムを実行してみましょう。
「a > 0」とターミナルに表示されます。
~/Desktop/Programming/CPP $ cd "/Users/**/Desktop/Programming/CPP/" && g++ IfTest1.cpp -o IfTest1 && "/Users/**/Des ktop/Programming/CPP/"IfTest1 a > 0
Visual Studio Codeで以下のcppファイルを作成して下さい。
新規作成 【IfTest2.cpp】
#include <iostream> int main() { int a; a = 10; if ( a >= 0) { std::cout << "a >= 0" << std::endl; } else { std::cout << "a < 0" << std::endl; } }
このプログラムでは「if-else文」とよれる構文を使用しています。
「もし〜なら〜、違うなら〜」という条件判断ができます。
if ( 条件 ) { 実行文; } else { 実行文; }
最初に処理されるのはifの括弧の中の条件です。
この条件に当てはまらなければ、elseの中括弧{}
の中の実行文が実行されます。
このプログラムでは変数 a の値は10なので、if文の中の実行文が実行されて「a >= 0
」が表示されます。
そこでこのプログラムの変数 aの値を次のように変更するとどうなるでしょうか?
a = 10 - 12;
こうすると変数aの値は-2
となるのでifの条件には当てはまらなくなります。
そのときはelseの実行文が実行されて「a < 0
」と画面に表示されます。
ここでは不等号「>=
」を使いました。
意味は〜以上です。
ではプログラムを実行してみましょう。
「a >= 0
」とターミナルに表示されます。
~/Desktop/Programming/CPP $ cd "/Users/**/Desktop/Programming/CPP/" && g++ IfTest2.cpp -o IfTest2 && "/Users/**/Des ktop/Programming/CPP/"IfTest2 a >= 0
Visual Studio Codeで以下のcppファイルを作成して下さい。
新規作成 【IfTest3.cpp】
#include <iostream> int main() { int a; a = -1; if ( a > 0) { std::cout << "a > 0" << std::endl; } else if ( a == 0 ) { std::cout << "a = 0" << std::endl; } else if ( a < 0 ) { std::cout << "a < 0" << std::endl; } }
このプログラムでは「if-else if文」とよれる構文を使用しています。
「もし〜なら〜、違うなら〜、それでも違うなら〜・・・」という条件判断ができます。
if ( 条件 ) { 実行文; } else if( 条件 ) { 実行文; } else if( 条件 ) { 実行文; } ・ ・ else { 実行文; }
else ifは何個でもつなげることができ、上から順に条件が処理されていきます。
条件に当てはまり次第その実行文が実行され、if文全体を抜けます。
else if文のどれにも当てはまらなければという意味で、else文を最後に組み合わせることもできます。
今回の変数 a は-1
なので、画面には「a < 0
」と表示されます。
ではプログラムを実行してみましょう。
「a < 0
」とターミナルに表示されます。
~/Desktop/Programming/CPP $ cd "/Users/**/Desktop/Programming/CPP/" && g++ tempCodeRunnerFile.cpp -o tempCodeRunnerFile && "/Users/**/Desktop/Programming/CPP/"tempCodeRunnerFile a < 0
Visual Studio Codeで以下のcppファイルを作成して下さい。
新規作成 【IfTest4.cpp】
#include <iostream> int main() { int a, b, p, q; a = 10; b = 5; p = a / b; q = a - p * b; if ( q == 0 ) { std::cout << "割り切れました。" << std::endl; } else { std::cout << "余りは、" << q << " です。" << std::endl; } }
変数 a と 変数 b の割り算をして割り切れるのか、もし割り切れなかったら余りを表示するプログラムです。
まず商を求めるために、p = a / b
を計算しています。
もし余りがあっても無視されてp に格納されます。
変数、a, b, p, q はすべて整数型のint型です。
小数点以下は無視されます。
例えば変数aの値が12だったら実際は2.4なのですが、int型のため「.4
」が無視され、変数pの値は2になります。
割り算して商pを求めた後に、q = a - p * b
の式で余りを求めています。
このプログラムでは余りは0なので、画面に「割り切れました。」と表示されます。
もし変数a の値が12だったら「余りは、2です。」と画面に表示されます。
ではプログラムを実行してみましょう。
「割り切れました。」とターミナルに表示されます。
~/Desktop/Programming/CPP $ cd "/Users/**/Desktop/Programming/CPP/" && g++ tempCodeRunnerFile.cpp -o tempCodeRunnerFile && "/Users/**/Desktop/Programming/CPP/"tempCodeRunnerFile 割り切れました。
【04 | データ型と2項演算子】 << 【ホーム】 >> 【06 | for】
↓↓クリックして頂けると励みになります。