0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Ruby 練習問題4 ~特定条件のみに呼応するプログラムの作成~

Posted at

こんにちは、プログラミング初学者"fujitacoma"です!

今回は、Ruby練習問題シリーズの4回目です。
Dateクラスを使用し、曜日を呼び出すプログラム問題です!

それでは早速始めます!

問題

今日の曜日を表示するコードをDateクラスを使用して記述してください。

ただし、金曜日だった場合だけ以下のように表示の内容を変えてください。

(出力内容)
「今日は月曜日」
「今日は金曜日だ !!!」

ヒント

Dateクラス

DateクラスとはRubyの標準ライブラリの機能です。Dateクラスを使うには以下一文を記述します。

require "date"

次に、Dateクラスを用いて「今日の曜日」を取得する場合は以下のように記述します。

Date.today.wday

wdayは曜日を0(日曜日)から6(土曜日)の整数で取得することができる
Dateクラスに用意されているメソッドです。

たとえば、以下のように使うことができます。

require "date"

day = Date.today.wday

puts day

これを実行すると、曜日に合わせた数字が出力されます。
たとえば、木曜日だとすれば4が出力されることになります。

これを踏まえて、問題を解いてみましょう!

解答と解説

模範解答

require "date"

day = Date.today.wday
days = ["日曜日", "月曜日", "火曜日", "水曜日", "木曜日", "金曜日", "土曜日"]

if day == 5
  puts "今日は#{days[day]}だ!!!"
else
  puts "今日は#{days[day]}"
end

解説

今回はRubyで日付を扱うため、RubyのライブラリにあるDateクラスを使用します。

(1行目)Dateクラスをライブラリから呼び出します。

(3行目)wdayメソッドを用いて曜日を0(日曜日)から6(土曜日)の整数にしたときの「今日」の値を取得します。

(4行目)配列daysを定義し、日曜日(0番)〜土曜日(6番目)まで文字列を格納します。

(6〜10行目)dayの値が5(金曜日)か否かで条件分岐させます。たとえば、今日が金曜日だった場合はday=5となり、daysの5番目の値である金曜日が出力されるようになります。

最後に

いかがでしたでしょうか!

シンプルですが、曜日の呼び出し等細かいところにミスを誘うポイントがありますね。
しっかり引っかかりました。笑
精進します。

ここまでお読み頂き、有難うございました!

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

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?