0
0

More than 1 year has passed since last update.

Ruby if, else問題

Posted at

if, else問題

Aさんは普段土日が休みの仕事に就いており、休みの日は遅くまで寝ていたいと考えています。

そこで、Aさんのために「その日が遅くまで寝ていられるかどうか」を判断するプログラムを作成します。

第一引数の値では「平日かどうか」、第二引数の値では「休暇かどうか」をtrueまたはfalseを用いて以下のように表します。

  • 条件1:第一引数がtrue(平日である)または、第二引数がtrue(休暇である)の場合はtrueと出力する
  • 条件2:第一引数がfalse(平日でない)または、第二引数がtrue(休暇である)の場合はtrueと出力する
  • 条件3:第一引数がtrue(平日である)または、第二引数がfalse(休暇でない)の場合はfalseと出力する
  • 条件4:第一引数がfalse(平日でない)または、第二引数がfalse(休暇でない)の場合はtrueと出力する
雛形
def sleep_in(is_weekday, is_vacation)
  # ここに条件式を実装する
end

# 呼び出し例
sleep_in(false, false)
模範解答
def sleep_in(is_weekday, is_vacation)
  if (is_weekday != true) || (is_vacation == true)
    puts true
  else
    puts false
  end
end

# 呼び出し例
sleep_in(false, false)

解説

  • 第一引数「平日かどうか」
    平日:true
    平日ではない:false

  • 第二引数「休暇かどうか」
    休暇:true
    休暇ではない:false

今回の条件から、「平日ではない」もしくは「平日だけど休暇」という場合がtrue。
「平日であり」、「休暇でもない」場合はFalse。

「〜ではない」という記述の仕方は否定の演算子!=を使います。
||は「または」という意味を表現しています。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0