開発環境
- OS X Lion - Apple(OS)
- TextWrangler(Text Editor) (BBEditの機能制限無料版、light版)
- Script言語:Ruby
『初めてのプログラミング 第2版』(Chris Pine 著、長尾 高弘 訳、オライリー・ジャパン、2010年、ISBN978-4-87311-469-9)の 12(新しいクラスのオブジェクト), 12.2(練習問題)、ハッピーバースデー を解いてみる。
その他参考書籍
- 『プログラミング言語 Ruby』David Flanagan, まつもと ゆきひろ 著 、卜部 昌平 監訳、長尾 高弘 訳、オライリー・ジャパン、2009年、ISBN978-4-87311-394-4)
- Rubyクックブック ―エキスパートのための応用レシピ集
ハッピーバースデー
コード(TextWrangler)
sample.rb
#!/usr/bin/env ruby1.9 # -*- coding: utf-8 -*- while true puts "生まれた年" year = gets.chomp.to_i break if year == 0 puts "生まれた月" month = gets.chomp.to_i puts "生まれた日" day = gets.chomp.to_i birth = Time.gm(year) td = Time.new age = 0 while birth.year < td.year age += 1 birth = Time.gm(year + age) end age -= 1 if month == td.month and day > td.day age -= 1 if month > td.month i = 1 age.times do |item| puts "平手打ち(パシッ) #{i}歳" i += 1 end end
入出力結果(Terminal)
$ ./sample.rb 生まれた年 2000 生まれた月 9 生まれた日 9 平手打ち(パシッ) 1歳 平手打ち(パシッ) 2歳 平手打ち(パシッ) 3歳 平手打ち(パシッ) 4歳 平手打ち(パシッ) 5歳 平手打ち(パシッ) 6歳 平手打ち(パシッ) 7歳 平手打ち(パシッ) 8歳 平手打ち(パシッ) 9歳 平手打ち(パシッ) 10歳 平手打ち(パシッ) 11歳 平手打ち(パシッ) 12歳 生まれた年 2000 生まれた月 9 生まれた日 10 平手打ち(パシッ) 1歳 平手打ち(パシッ) 2歳 平手打ち(パシッ) 3歳 平手打ち(パシッ) 4歳 平手打ち(パシッ) 5歳 平手打ち(パシッ) 6歳 平手打ち(パシッ) 7歳 平手打ち(パシッ) 8歳 平手打ち(パシッ) 9歳 平手打ち(パシッ) 10歳 平手打ち(パシッ) 11歳 平手打ち(パシッ) 12歳 生まれた年 2000 生まれた月 9 生まれた日 11 平手打ち(パシッ) 1歳 平手打ち(パシッ) 2歳 平手打ち(パシッ) 3歳 平手打ち(パシッ) 4歳 平手打ち(パシッ) 5歳 平手打ち(パシッ) 6歳 平手打ち(パシッ) 7歳 平手打ち(パシッ) 8歳 平手打ち(パシッ) 9歳 平手打ち(パシッ) 10歳 平手打ち(パシッ) 11歳 生まれた年 2000 生まれた月 10 生まれた日 1 平手打ち(パシッ) 1歳 平手打ち(パシッ) 2歳 平手打ち(パシッ) 3歳 平手打ち(パシッ) 4歳 平手打ち(パシッ) 5歳 平手打ち(パシッ) 6歳 平手打ち(パシッ) 7歳 平手打ち(パシッ) 8歳 平手打ち(パシッ) 9歳 平手打ち(パシッ) 10歳 平手打ち(パシッ) 11歳 生まれた年 2000 生まれた月 8 生まれた日 1 平手打ち(パシッ) 1歳 平手打ち(パシッ) 2歳 平手打ち(パシッ) 3歳 平手打ち(パシッ) 4歳 平手打ち(パシッ) 5歳 平手打ち(パシッ) 6歳 平手打ち(パシッ) 7歳 平手打ち(パシッ) 8歳 平手打ち(パシッ) 9歳 平手打ち(パシッ) 10歳 平手打ち(パシッ) 11歳 平手打ち(パシッ) 12歳 生まれた年 0 $
0 コメント:
コメントを投稿