開発環境
- OS X Lion - Apple(OS)
- TextWrangler(Text Editor) (BBEditの機能制限無料版、light版)
- Script言語:Ruby
『初めてのプログラミング 第2版』(Chris Pine 著、長尾 高弘 訳、オライリー・ジャパン、2010年、ISBN978-4-87311-469-9)の 13章(新しいクラスの作成と既存クラスの変更), 13.6(練習問題の続き)オレンジの木 を解いてみる。
その他参考書籍
- 『プログラミング言語 Ruby』David Flanagan, まつもと ゆきひろ 著 、卜部 昌平 監訳、長尾 高弘 訳、オライリー・ジャパン、2009年、ISBN978-4-87311-394-4)
- Rubyクックブック ―エキスパートのための応用レシピ集
オレンジの木
コード(TextWrangler)
sample.rb
#!/usr/bin/env ruby1.9 #-*- coding: utf-8 -*- class OrangeTree def initialize @orange_count = 0 @age = 0 @alive = true @height = 0 puts "オレンジの木を植えました。" end def height @height end def age @age end def one_year_passes @orange_count = 0 if @alive @age += 1 @height += 10 @orange_count = @age * 2 if @age >= 5 end if @age != nil and @age > 10 @alive = false @height = nil @age = nil @orange_count = 0 end end def count_the_orange return @orange_count end def pick_an_orange if @orange_count > 0 @orange_count -= 1 return 'オレンジはとても美味しいです。' else return '採れる実はありません。' end end end ot = OrangeTree.new 15.times do puts "一年経過" ot.one_year_passes puts "樹齢: #{ot.age} 高さ: #{ot.height} 実の数: #{ot.count_the_orange}" (ot.count_the_orange + 1).times do puts "#{ot.pick_an_orange}" end end
入出力結果(Terminal)
$ ./sample.rb オレンジの木を植えました。 一年経過 樹齢: 1 高さ: 10 実の数: 0 採れる実はありません。 一年経過 樹齢: 2 高さ: 20 実の数: 0 採れる実はありません。 一年経過 樹齢: 3 高さ: 30 実の数: 0 採れる実はありません。 一年経過 樹齢: 4 高さ: 40 実の数: 0 採れる実はありません。 一年経過 樹齢: 5 高さ: 50 実の数: 10 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 採れる実はありません。 一年経過 樹齢: 6 高さ: 60 実の数: 12 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 採れる実はありません。 一年経過 樹齢: 7 高さ: 70 実の数: 14 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 採れる実はありません。 一年経過 樹齢: 8 高さ: 80 実の数: 16 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 採れる実はありません。 一年経過 樹齢: 9 高さ: 90 実の数: 18 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 採れる実はありません。 一年経過 樹齢: 10 高さ: 100 実の数: 20 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 オレンジはとても美味しいです。 採れる実はありません。 一年経過 樹齢: 高さ: 実の数: 0 採れる実はありません。 一年経過 樹齢: 高さ: 実の数: 0 採れる実はありません。 一年経過 樹齢: 高さ: 実の数: 0 採れる実はありません。 一年経過 樹齢: 高さ: 実の数: 0 採れる実はありません。 一年経過 樹齢: 高さ: 実の数: 0 採れる実はありません。 $
0 コメント:
コメントを投稿