-
例題
Q .下記コードの実行結果を選べ。
x = 12 y = 6 puts x / y unless y == 6
① true ② 6 ③ nil ④ 2
解説をみる前に答えを予想してみて下さい。
↓下に解説があります。↓
-
解説
unless y == 6
unless 条件
は条件が偽である(正しくない)場合のみ、定義した処理を行う条件分岐のメソッドです。
今回の場合はy == 6
が真である(正しい)ので、先に書いた計算を行わず戻り値がない為nil
が表示されました。
よって答えは ③ nil
検証の為、
y
に他の値を代入した場合や条件を変えた時は unless文の条件が偽となり、x / y
の各計算結果が表示されました(以下実行例)。
MyComputer% irb irb(main):001:0> x = 12 => 12 irb(main):002:0> y = 6 => 6 irb(main):003:0> puts x / y unless y == 6 => nil irb(main):004:0> puts x / y unless y == 5 2 => nil irb(main):005:0> y = 4 => 4 irb(main):006:0> puts x / y unless y == 6 3 => nil irb(main):007:0>
-
最後に
ここまで読んでいただき、ありがとうございました。
プログラミング的な解釈や文法、日本語的な文法、Qiita的な書き方等で間違った点がありましたら修正を行いますので、指摘コメントを頂けると幸いです。