Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 7 additions & 7 deletions kadai1.rb
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,12 @@
year = gets.to_i #gets(標準入力)

# 以下の条件分岐に、新しい条件を追加してください
if
puts "#年にオリンピックはまだありません"
elsif

elsif
puts "#年は夏季オリンピックが開催されました"
if year < 1896
puts "#{year}年にオリンピックはまだありません"
elsif year == 1916 || year == 1940 || year == 1944
puts "#{year}年にオリンピックは開催されませんでした"
elsif year >= 1896 && year < 2020 && (year % 4) == 0
puts "#{year}年は夏季オリンピックが開催されました"
else
puts "#年は夏季オリンピックイヤーではありません"
puts "#{year}年は夏季オリンピックイヤーではありません"
end
12 changes: 9 additions & 3 deletions kadai2.rb
Original file line number Diff line number Diff line change
Expand Up @@ -8,13 +8,19 @@
{year: 1920, city: "アントワープ"},
{year: 1924, city: "パリ", note: "同じ都市での2回目の開催は初"},
{year: 1928, city: "アムステルダム"},
{year: 1932, city: "ロサンゼルス"}
{year: 1932, city: "ロサンゼルス"},
{year: 2020, city: "東京", note: "コロナウイルスで2021年に延期を追加してください。"}
]

puts "第1~10回大会のオリンピック一覧"

# each文を用いて、オリンピックの情報を出力してください


olympics.each do |olympic|
puts "--------------------------------------"
puts "#{olympic[:year]}#{olympic[:city]}大会"
if olympic[:note]
puts "豆知識:#{olympic[:note]}"
end
end

# 豆知識がある場合のみ豆知識について出力してください
27 changes: 27 additions & 0 deletions kadai3.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
class Menu
attr_accessor :name
attr_accessor :price

# get_total_priceメソッドを定義してくださ

def get_total_price total
return "#{self.name} #{total_price(total)}vnd"
end

private

def total_price total
result = self.price * total
result -= 10000 if total >= 3

result
end
end

menu1 = Menu.new
menu1.name = "Phở"
menu1.price = 30000

puts menu1.get_total_price 3

# menu1に対してget_total_priceメソッドを呼び出してください
27 changes: 27 additions & 0 deletions kadai4.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
class Menu
attr_accessor :name
attr_accessor :price

def initialize name, price
self.name = name
self.price = price
end

def info
return "#{self.name} #{self.price}vnd"
end
end

#メニューの変数を定義してください
menu1 = Menu.new "Phở", 30000
menu2 = Menu.new "Bún chả", 40000
menu3 = Menu.new "Bánh mì", 20000

puts menu1.info
puts menu2.info
puts menu3.info

# 変数menusを定義して配列を代入してください


# menusに対して繰り返し処理を実行してください
51 changes: 51 additions & 0 deletions kadai5.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
class Menu
attr_accessor :name
attr_accessor :price

def initialize name, price
self.name = name
self.price = price
end

def info
return "#{self.name} #{self.price}vnd"
end
end

class Drink < Menu
attr_accessor :size

# initializeメソッドをオーバーライドする
# nameとpriceはsuperとする
def initialize name, price, size
super name, price
self.size = size
end

def info
return "#{self.name} #{self.price}vnd (#{self.size}サイズ)"
end
end

menu1 = Menu.new "Phở", 30000
menu2 = Menu.new "Bún chả", 40000
menu3 = Menu.new "bánh mì", 20000

# Drinkの変数を定義してください
drink1 = Drink.new "trà", 5000, "Sサイズ"
drink2 = Drink.new "trà", 10000, "Mサイズ"

# 変数menusを定義して配列を代入してください

menus = [menu1, menu2, menu3, drink1, drink2]

menus.each.with_index do |menu, index|
puts "#{index + 1}: #{menu.info}"
end
puts "--------------------"
puts "メニューの番号を選択してください"

order_number = gets.to_i

puts "選択されたメニュー: #{order_number}"
puts "お会計は#{menus[order_number - 1].price}です"