Output Diary

プログラミング × 読書 のアウトプットを発信しています

【Ruby】条件分岐・真偽値・比較演算子

条件分岐

 

f:id:kina_kq:20210223072605p:plain

条件分岐とは、プログラム中で、ある条件が満たされて

いるかどうかによって次に実行するプログラム上の位置を変化させることを言います。

 
 
 
  
 
 
例えば、
ケーキがあったら、ケーキを食べる
 のような処理です。

 

 
 
if文を用いると、
もし○○ならば、●●を行う
という条件分岐で表すことが出来ます。
 
 
プログラミングでは、
処理はifendで囲んで表します。
 
 
ifにelseを組み合わせると
「もし〇〇なら●●を行う、そうでなければ■■を行う」
という処理ができるようになります。
 
if文の条件がfalseの場合、elseの処理が実行されます。
 
 例えば、
 
ケーキがある(Yes)→ ケーキを食べる。
ケーキがない(No)  → 昼寝をする。

 といった感じですね。

 

f:id:kina_kq:20210223073356p:plain

 

多くのプログラミング言語では、

コンピュータに条件分岐処理をやらせるための命令文が用意されています。

例えば、if文switch文などあります。

 
 
 

条件を更に分けていく

elsifを用いると「もし◯◯だったら●●を行う、そうでなくもし△△であれば▲▲を行う、いずれでもなければ■■を行う」という条件分岐ができます。
elsifをelseifと書かないように注意しましょう。
 
(例:ケーキ)
ケーキがある→ケーキを食べる。
ケーキはないけどお金がある→ケーキを買いに行く。
ケーキもお金もない→昼寝をする。

 

 
といったような感じです。
 図にすると↓のような感じです。
 

f:id:kina_kq:20210223145437j:plain

 「ケーキがある?」と聞かれ、
ケーキがある(Yes)ならば、ケーキを食べることが出来ますが、
ケーキがない(No)ならば、ケーキを食べれませんよね。
 
その場合は、Noのお金がある?」の道に進みます。
 
お金がある(Yes)ならば、ケーキを買いに行くことが出来ます。
しかしもしお金がない(No)ならば、昼寝をするといった選択になります。
 
このようにYesとNoの繰り返しで行う処理を条件分岐と呼びます。
 
 
 

真偽値

真偽値はtruefalseを持っています。
 
 
成り立つとtrue
成り立たないとfalse といったように判断を行います。
 
例えば、目の前にケーキがあり、
ケーキがありますか?と聞かれたら、
 
それはtrue
なければfalseになるといった感じです。
 

比較演算子

左と右の値が等しいか調べるものです。
 
「a == b」はaとbが等しければtrue、
等しくなければfalseになります。
 
「a != b」はその逆です。
 

複数の条件を組み合わせる方法

1.「かつ」について
「かつ」は「&&」で表します。
 
「10より大きいかつ30より小さい」というものは
 
❌    10  <  x  <  30
⭕ x>10  &&  x <30
 
と表します。
 
2.「または」について
「または」は「||」で表します。
 
unless
条件を満たさないときに実行
 
case
条件によって複数から1つを選んで分岐させるときに使う
 
if は2つに分岐、case は3つ以上に分岐
 
 
 
本日はここまでです。
また明日お会いしましょうー(・∀・)
 

f:id:kina_kq:20210223074323p:plain