codepad
[
create a new paste
]
login
|
about
Language:
C
C++
D
Haskell
Lua
OCaml
PHP
Perl
Plain Text
Python
Ruby
Scheme
Tcl
classlas Creature attr_accessor :name attr_accessor :price attr_accessor :length def initialize(name:, price:, length:) self.name = name self.price = price self.length = length end def profile return "#{self.name}は#{self.price}円です。全長は#{self.length}mくらいになります。" end end require "./Creature" #creatureクラスを継承 class Fish < Creature attr_accessor :swim_speed def initialize(name:, price:, length:, swim_speed:) #superを用いてCreatureクラスのinitializeメソッドとの共通項をまとめて継承 super(name: name, price: price, length: length) self.swim_speed = swim_speed end #profileを継承&オーバーライド def profile return "#{self.name}は#{self.price}円です。全長は#{self.length}mくらいです。 泳ぐ速さは#{self.swim_speed}km/hくらいです。" end end require "./Creature" #Creatureクラスを継承 class Reptiles < Creature attr_accessor :run_speed def initialize(name:, price:, length:, run_speed:) #superを用いてCreatureクラスのinitializeメソッドとの共通項をまとめて継承 super(name: name, price: price, length: length:) self.run_speed = run_speed end def profile return "#{self.name}は#{self.price}円です。全長は#{self.length}mくらいです。 走る速さは#{self.run_speed}km/hくらいです。" end end #それぞれのクラスを読み込み require "./Fish" require "./Reptiles" fish1 = Fish.new(name:"バショウカジキ", price:750, length:3.3, swim_speed:112) fish2 = Fish.new(name:"錦鯉", price:40000000, length:30, swim_speed:16) reptile1 = Reptiles.new(name:"バシリスク", price:8000, length:0.6, run_speed:3.6) reptile2 = Reptiles.new(name:"ブラックマンバ", price:50000, length:2, run_speed:16) creatures = [fish1, fish2, reptile1, reptile2] number = 1 creatures.each do |creature| puts "No.#{number} #{creature}" number += 1 end puts "どの生き物が気になりますか?" creature_number = gets.chomp.to_i selected_creature = creatures[creature_number][:name] puts "#{selected_creature}ですね。かわいいですよね。おすすめです。"
Private
[
?
]
Run code
Submit