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 3 years have passed since last update.

Ruby TGIFを解く

Posted at

#rubyでTGIFを解く
#問題
TGIFとは、Thank God It's Friday の頭文字を取ったもので、

キリスト教の文化圏において、仕事や学校の長い一週間を終えて週末を迎えられることに感謝する言葉です。

入力として、平日の曜日が与えられるので、
・Monday, Tuesday, Wednesday, Thursday であれば、Still (曜日名)
・Friday であれば、TGIF
を出力してください。
#入力される値
入力は以下のフォーマットで与えられます

s
#期待する出力
入力として与えられた曜日が、
・Monday, Tuesday, Wednesday, Thursday のいずれかであれば、Still (曜日名)
・Friday であれば、TGIF
を出力してください。
#入力例1
Monday
#出力例1
Still Monday
#入力例2
Friday
#出力例2
TGIF
#私の答え

w = gets.to_s
if w == "Monday" || w == "Tuesday" || w == "Wednesday" || w== "Thursday"
    puts "Still" + w.sub("", " ")
elsif w == "Friday"
    puts "TGIF"
end

##解説
###1行目で文字列を取得。
###2行目でif文を用いて取得した文字列と「イコール」の関係になるならばというコードを作成。「| |」はor文なので「もしくは」という意味。
###3行目でputsで出力する訳ですが、今回は出力した結果に取得した結果をくっつけないといけないので「+」で連結。かつ、このままだとスペースがないまま「StillMonday」という感じでギチギチになってしまうのでsubメソッドを用いて「""」を「" "」にするとスペースが空きます。
###4行目でelsifを用いて「金曜日だった場合」を作成しないといけないので「イコール」で"Friday"にしています。
###5行目でputsで"Friday"がイコールだった場合"TGIF"が出力されます。
#今回のポイントはおそらくsubメソッドだったかなと思います。他にもgsubというメソッドもあり、subメソッドはピンポイントで変更する事が可能ですが、gsubメソッドは全てを変更する事が可能なので応用としてかなり使えます!
#以上!

0
0
3

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?