問題
以下のように、果物の名前と値段が入った配列があります。
この配列を用いて、果物の名前とそれぞれの合計額が出力される
コードを記述してください。
fruits_price = [["apple", [200, 250, 220]], ["orange", [100, 120, 80]], ["melon", [1200, 1500]]]
ターミナル
appleの合計金額は670円です
orangeの合計金額は300円です
melonの合計金額は2700円です
模範解答
模範解答
fruits_price = [["apple", [200, 250, 220]], ["orange", [100, 120, 80]], ["melon", [1200, 1500]]]
fruits_price.each do |fruit|
sum = 0
fruit[1].each do |price|
sum += price
end
puts "#{fruit[0]}の合計金額は#{sum}円です"
end
【解説】
3行目
fruits_priceから["apple", [200, 250, 220]]という値を取り出す。変数fruitに代入します。
4行目〜7行目
fruitの1番目の値[200, 250, 220]から値を1つずつ取り出す。自己代入しながらsumを出力します。
以降、オレンジとメロンも順に取り出し処理は同様です。
補足として・・・添字1は金額、添字0は果物です。