ruby
1#menu.rb 2 3class Menu 4 attr_accessor :name 5 attr_accessor :price 6 7 def initialize(name:, price:) 8 self.name = name 9 self.price = price 10 end 11 12 def info 13 return "#{self.name} #{self.price}円" 14 end 15 16 def get_total_price(count) 17 total_price = self.price * count 18 if count >= 3 19 total_price -= 100 20 end 21 return total_price 22 end 23end 24
ruby
1#index.rb 2 3require "./menu" 4 5menu1 = Menu.new(name: "ピザ", price: 800) 6menu2 = Menu.new(name: "すし", price: 1000) 7menu3 = Menu.new(name: "コーラ", price: 300) 8menu4 = Menu.new(name: "お茶", price: 200) 9 10menus = [menu1, menu2, menu3, menu4] 11 12index = 0 13menus.each do |menu| 14 puts "#{index}. #{menu.info}" 15 index += 1 16end 17 18puts "--------------" 19puts "メニューの番号を選択してください" 20 21order=gets.chomp.to_i 22 23 24selected_menu=menus[order] 25 26 27puts "選択されたメニュー:#{selected_menu.name} 28" 29 30order=gets.chomp.to_i 31 32selected_menu=menus[order] 33 34puts "選択されたメニュー:#{selected_menu.name}" 35
コンソール 0.ピザ 800円 1.すし 1000円 2.コーラ 300円 -------------- メニューの番号を選択してください 3 選択されたメニュー:お茶
こちらのコードのindex.rbの最後の一行めの
「puts "選択されたメニュー:#{selected_menu.name}"」の結果
コンソールで
「選択されたメニュー:お茶」
と表示されるのはなぜですか?
この部分は、オブジェクトに対して、インスタンス変数を代入して、
文字を呼び出しているという解釈で良いのでしょうか?
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/09/10 02:45