今回やること
こんにちは!
今回は条件分岐の解説の第三弾でいよいよラストになります。
今回は、複数の条件があった時の分岐や、ネストと呼ばれる入れ子でのif文の使い方を解説します!
条件分岐の復習を行いたい方は以下の記事をご覧くださいね!
-
条件分岐(if編)・比較演算子!プログラミングの要!
2024/7/13
if文の条件分岐を学ぼう!プログラミングに必須の条件分岐を理解しよう!
比較演算子もご紹介!初心者むけ解説第7弾!
-
真偽値と条件分岐(switch編)
2024/7/22
条件分岐解説第2弾!真偽値とswitch文の解説!
条件分岐のやや発展した内容を扱ってプログラミング力をあげよう!
今回のポイント
今回のポイントは以下の2つです!
- AND条件とOR条件
- NOT条件
- if文のネストの使い方
サクサクっといってしまいましょう!
条件分岐の複数条件とは?
前回までは、numberが6以下(number <= 6)の時などの一つの条件でしか分岐をしていませんでした。
しかし、一つの条件だけでは、numberが0以上で、numberが6以下(つまり 0 <= number <= 6)のような分岐はできません。
そこでプログラミング言語には、AND条件とOR条件という助け舟が用意されています。
詳しくみていきましょう!
AND条件
AND条件とは、どちらの条件もTrueの時、Trueとなる状態のことです。
これは日本語で言う「かつ」に当たります。数学的に言うと、キャップ(∩)のことです。
numberが0以上、かつ、numberが6以下 という条件 ( 0 <= number <= 6)などが該当します。
AND条件にするには、条件式 && 条件式とします。
具体例は以下の通りです。
AND条件は以下のようになるので覚えておきましょう!
条件1 | 条件2 | 条件1 && 条件2 |
---|---|---|
True | True | True |
True | True | False |
False | False | False |
False | False | False |
OR条件
OR条件とは、どちらかの条件がTrueの時、Trueとなる状態のことです。
これは日本語で言う「または」に当たります。数学的に言うと、カップ(∪)のことです。
numberが0未満、または、numberが6より上 という条件 ( number < 0 ,6 < number)などが該当します。
OR条件にするには、条件式 || 条件式とします。(キーボード右上、BackSpaceキーの横の縦棒)
具体例は以下の通りです。
OR条件は以下のようになるので覚えておきましょう!
条件1 | 条件2 | 条件1 || 条件2 |
---|---|---|
True | True | True |
True | True | True |
False | False | True |
False | False | False |
複数条件のTips
複数条件は3つ以上でも可能
例えば、xは0以下、または、xは10以上、かつxは偶数のような条件にしたいときは以下のように書けます。
(x < 0 || 10 <= x) && (x % 2 == 0)
この時、()を使ってまとまりを明確にしておくと、不具合が起こりにくく、可読性が向上します。
()を使わなかった場合、想定外の動きをすることがあります。
数学的にもわかりやすくなるので、特に3つ以上の条件にする際は()を使う習慣をつけておきましょう。
※(x < 0 || 10 <= x) && (x % 2 == 0) と
(x < 0 ) || (10 <= x && x % 2 == 0) では、意味が全く異なります。
&&と&、||と|
AND条件とOR条件の紹介時に、「&&」と「||」と書くとお伝えしましたが、
実は「&」「|」だけでもAND条件、OR条件になります。
しかし、微妙に異なり、2つ連続して書く方がプログラム的には効率的なのです。
例えば以下のコードがあったとします。
この時、&&にした場合は、1つ目の条件がFalseであったため、2つ目の条件の比較はスキップして次の処理に行きますが、
&にした場合は、1つ目の条件がFalseであったとしても、2つ目の条件の比較を行います。
従って、条件分岐の面では、&単体だと無駄に条件比較をすることになるので、非効率です。
なので、特別なことがない限りは、基本的に&&のように書くことを推奨します。
なお、OR条件の |と||は
1つ目の条件がTrueの時、全体としてTrueで確定するので、||では2つ目以上の条件比較はスキップされます。
OR条件に関しても、||と書く方が効率的です。
NOT条件
NOTは文字通り、否定を表すものです。
つまり、条件がTrueであればFalse、条件がFalseであればTrueを返します。
NOT条件は、「!条件式」で書くことができます。
具体例を見てみましょう!
条件 | !条件 |
---|---|
True | False |
False | True |
ネスト
.
ネストとは?
続いてネストをご紹介します。
ネストとは、日本語にすると入れ子のことで、一言で言うと、条件分岐の処理の中に、新たな条件分岐を加える。ようなものです。
具体例を見ていきましょう!
if文の中にif文が入っていることがわかります。
上記で説明した複数条件でも書くことは可能ですが、条件によってはコードが見やすくなったり、
適切にネストにすると、プログラムの処理時間が短くなるといったメリットが存在します。
なので複数条件との使い分けは悩ましいところですが、コードが読みやすくなるように使い分けることができれば理想です。
if文に限らず、一つのブロック( {} )の中に別のブロックを記載することをネストと呼ぶので、ぜひ覚えておきましょう!
まとめ
いかがでしたでしょうか?
これで条件分岐の一通りの解説は以上になります!
前回や前々回の記事も見直して条件分岐を理解してしまいましょう!
-
条件分岐(if編)・比較演算子!プログラミングの要!
2024/7/13
if文の条件分岐を学ぼう!プログラミングに必須の条件分岐を理解しよう!
比較演算子もご紹介!初心者むけ解説第7弾!
-
真偽値と条件分岐(switch編)
2024/7/22
条件分岐解説第2弾!真偽値とswitch文の解説!
条件分岐のやや発展した内容を扱ってプログラミング力をあげよう!
今回のポイントを改めてまとめておきます!
以上になります!
お疲れ様でした!
次回はプログラミングのレベルが一段階上がる、繰り返しの解説を行います!
Take It easy!
お疲れ様でした♪