条件式が偽の時の処理(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)のそれぞれの場合に行う処理を記述することが可能です。
サンプルプログラム
では簡単なプログラムで確認して見ます。
#! 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です。そして下記のように実行して下さい。
( Written by Tatsuo Ikura )
RubyLife