条件式が偽の時の処理(if...else...end)

if 文では条件式が「真」の時に実行する処理を記述することができますが、「偽」のときに実行する処理も同時に記述することができます。ここでは Ruby の if 文で条件式が「偽」の場合の処理を記述する方法について解説します。

(Last modified: )

関係演算子の種類

if 文では条件式が「真」になった場合に実行する処理を次のように記述できました。

if 条件式 then
  条件式が真の時に実行する処理1
  条件式が真の時に実行する処理2
  ...
end

「真」になった場合だけでなく「偽」になった場合に実行する処理を記述する場合は次の構文を使用します。

if 条件式 then
  条件式が真の時に実行する処理1
  条件式が真の時に実行する処理2
  ...
else
  条件式が偽の時に実行する処理1
  条件式が偽の時に実行する処理2
  ...
end

条件式を評価し「真」だった場合には then から else までに書かれた処理を上から順に実行します。そして条件式が「偽」だった場合には else から end までに書かれた処理を上から順に実行します。

次の例では if 文の条件式として変数に代入された数値の値を 0 と比較しています。

amari = 10 % 3

if amari == 0 then
  puts("割り切れました")
else
  puts("割り切れませんでした")
  puts("余りは" + amari.to_s + "です")
end

if 文の条件式を評価し、「真」であれば "割り切れました" と表示し、「偽」であれば "割り切れませんでした" と表示した上で余りの数値を表示します。

このように一つの if 文で条件式が「真」と「偽」のそれぞれの場合に行う処理を記述することが可能です。

サンプルコード

では簡単なプログラムで確認してみます。

# encoding: UTF-8

num = 10
puts("num = " + num.to_s)

if num % 3 == 0 then
  puts("3で割り切れました")
else
  puts("3で割り切れませんでした")
  puts("余りは" + (num % 3).to_s + "です")
end

puts()

num = 12
puts("num = " + num.to_s)

if num % 3 == 0 then
  puts("3で割り切れました")
else
  puts("3で割り切れませんでした")
  puts("余りは" + (num % 3).to_s + "です")
end

下記のように実行して下さい。

条件式が偽の時の処理(if...else...end)

-- --

Ruby の if 文で条件式が「偽」の場合の処理を記述する方法について解説しました。

( Written by Tatsuo Ikura )

Profile
profile_img

著者 / TATSUO IKURA

プログラミングや開発環境構築の解説サイトを運営しています。