条件分岐を使いこなそう
問題
平日でないまたは休日の場合は「True」と返信し、
休日ではない場合は「False」と条件分岐させるメソッドを実装しなさい。
メソッドの呼び出しは
today_is_vacation(weekend, vacation)
このような問題があったとする。一見何を言っているのかわからないと思うので例を
引数が
(false, false)なら False(休日出勤)
(true, false)なら False(平日)
(false, True)なら True(休日)
(True, True)なら True(平日休み)
を判別すると言うことである。
これを実装するにはどのようなif文で条件分岐をすれば良いのでしょうか。4通りの引数の渡し方があって一見複雑そうですよね?
しかし、よく考えてみてください。
問題文としては休日ならTrue、違うならFalseを出すだけなので、実は条件分岐はシンプルです。
def sleep_in(weekday, vacation)
if vacation == false
puts "False"
else
puts "True"
end
end
weekday = true
vacation = false
sleep_in(weekday, vacation)
このように条件分岐を記述することで
vacationがtrueだった場合のみTrueを返します。これだけで
休日ならTrue、違うならFalseを出力することができます。
一見複雑に見えても、出力したい結果がなんのかを意識することで問題は以外は簡単だったりします。
問題と向き合って、一番楽な正解を見つけられるクセをつけていきたいですね!