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

広告

「if」文では条件式が真(true)の時に実行する処理の他に条件式が偽(false)の時に実行する処理も記述することが可能です。次の書式を使用します。

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

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

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

amari = 10 % 3

if amari == 0 then
  print("割り切れました¥n")
else
  print("割り切れませんでした¥n")
  print("余りは", amari, "です¥n")
end

「if」文の条件式を評価し、真(true)であれば「print("割り切れました¥n")」を実行し、偽(false)であれば「print("割り切れませんでした¥n")」と「print("余りは", amari, "です¥n")」を実行します。

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

サンプルプログラム

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

test6-1.rb

#! ruby -Ku
require "kconv"

amari = 10 % 3

print(Kconv.tosjis("10を3で割った結果¥n"))

if amari == 0 then
  print(Kconv.tosjis("割り切れました¥n"))
else
  print(Kconv.tosjis("割り切れませんでした¥n"))
  print(Kconv.tosjis("余りは"), amari, Kconv.tosjis("です¥n"))
end

amari = 10 % 2

print(Kconv.tosjis("10を2で割った結果¥n"))

if amari == 0 then
  print(Kconv.tosjis("割り切れました¥n"))
else
  print(Kconv.tosjis("割り切れませんでした¥n"))
  print(Kconv.tosjis("余りは"), amari, Kconv.tosjis("です¥n"))
end

上記のプログラムを「test6-1.rb」として保存します。文字コードはUTF-8です。そして下記のように実行して下さい。

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

( Written by Tatsuo Ikura )