ruby学習メモ 練習問題
CodeZine「脱 超初心者 Javaアルゴリズム問題集 第2回」を ruby でやってみる
http://codezine.jp/careerup/article/aid/1495.aspx
問題1
標準入力された月、日が、今日であるかどうかを判定するプログラムを作成してください。
- コマンドラインに「今日は何月何日でしょう?」のメッセージを表示する。
- それぞれ、「何月?==> 」「何日? ==> 」を表示して入力を受け取る。
- 入力された月日が今日であれば「正解!!」、間違っていれば「間違っています」と表示する。
回答?
# 脱 超初心者 Javaアルゴリズム問題集 第2回 # 条件分岐(複合条件) # # http://codezine.jp/careerup/article/aid/1495.aspx class Study2 def start puts "今日は何月何日でしょう?" print "何月?==>" month = Integer(readline) print "何日?==>" day = Integer(readline) now = Time.now if month == now.month && day == now.day puts "正解!!" else puts "間違っています。" end end end Study2.new.start
メモ
month = readline.chomp!
だと
month == now.month
が true にならない。String と Fixnum で型が異なるため
irb(main):276:0> readline.chomp! => String irb(main):277:0> now.month.class => Fixnum