Processing プログラミング 初心者向け

条件分岐の発展!(複数条件とネスト)

今回やること

こんにちは!
今回は条件分岐の解説の第三弾でいよいよラストになります。
今回は、複数の条件があった時の分岐や、ネストと呼ばれる入れ子での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条件具体例

AND条件は以下のようになるので覚えておきましょう!

条件1条件2条件1 && 条件2
TrueTrueTrue
TrueTrueFalse
FalseFalseFalse
FalseFalseFalse
AND条件早見表

OR条件

OR条件とは、どちらかの条件がTrueの時、Trueとなる状態のことです。
これは日本語で言う「または」に当たります。数学的に言うと、カップ(∪)のことです。

numberが0未満、または、numberが6より上 という条件 ( number < 0 ,6 < number)などが該当します。

OR条件にするには、条件式 || 条件式とします。(キーボード右上、BackSpaceキーの横の縦棒)
具体例は以下の通りです。

OR条件具体例

OR条件は以下のようになるので覚えておきましょう!

条件1条件2条件1 || 条件2
TrueTrueTrue
TrueTrueTrue
FalseFalseTrue
FalseFalseFalse
OR条件早見表

複数条件の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条件は、「!条件式」で書くことができます。
具体例を見てみましょう!

NOT条件具体例
条件!条件
TrueFalse
FalseTrue
NOT条件早見表

ネスト

.

ネストとは?

続いてネストをご紹介します。
ネストとは、日本語にすると入れ子のことで、一言で言うと、条件分岐の処理の中に、新たな条件分岐を加える。ようなものです。
具体例を見ていきましょう!

if文の中にif文が入っていることがわかります。
上記で説明した複数条件でも書くことは可能ですが、条件によってはコードが見やすくなったり、
適切にネストにすると、プログラムの処理時間が短くなるといったメリットが存在します。

なので複数条件との使い分けは悩ましいところですが、コードが読みやすくなるように使い分けることができれば理想です。

if文に限らず、一つのブロック( {} )の中に別のブロックを記載することをネストと呼ぶので、ぜひ覚えておきましょう!

まとめ

いかがでしたでしょうか?
これで条件分岐の一通りの解説は以上になります!
前回や前々回の記事も見直して条件分岐を理解してしまいましょう!

条件分岐
条件分岐(if編)・比較演算子!プログラミングの要!

2024/7/13  

if文の条件分岐を学ぼう!プログラミングに必須の条件分岐を理解しよう!
比較演算子もご紹介!初心者むけ解説第7弾!

分岐
真偽値と条件分岐(switch編)

2024/7/22  

条件分岐解説第2弾!真偽値とswitch文の解説!
条件分岐のやや発展した内容を扱ってプログラミング力をあげよう!

今回のポイントを改めてまとめておきます!

ポイント

  • AND条件は、条件式 && 条件式 。日本語でいうと「かつ」に相当
  • OR条件は、条件式 || 条件式 。日本語でいうと「または」に相当
  • if文のネストとは、if文の中にif文を記載すること

以上になります!
お疲れ様でした!

次回はプログラミングのレベルが一段階上がる、繰り返しの解説を行います!

投稿主
投稿主

Take It easy!
お疲れ様でした♪

  • この記事を書いた人
  • 最新記事
投稿主

TAKE

こんにちは!ITエンジニアのTAKEです!
20代前半。社会人2年目です!
このブログは
「Take it easy!Take IT Breezy!」
をテーマにして 初学者でも気軽に読めるように
IT関連の情報を展開しています!

-Processing, プログラミング, 初心者向け