基礎プログラミング I 第05 回 配列の構造 最低運賃を表示するには

最低運賃のプランを出すには、運賃の列を比較して、表示すればよい。 データが 1 行に詰められているので、最低運賃の列を縦にしまい、 その要素番号を記録して他のデータを表示することにする。 まずは最低運賃だけを表示させよう。ary_lowest.rb

#!/usr/koeki/bin/ruby
price = Array.new         # 運賃価格をしまう配列

n = 0

# データをしまう部分

print("東京から酒田へ行く方法を探します:\n")

while train_data = gets
    if /(\S+)\s+(\S+)\s+(\S+)\s+(\d+)/ =~ train_data
      price[n] = $4.to_i
      n += 1
    end
end

### 低い運賃プランを選択する部分

low = price[0]                 # とりあえずの最低運賃
nlow = 0                       # 最低運賃を持つ要素番号

i = 0                          # 最低運賃を調べる要素番号

while i < price.length-1
  if price[i] < low
    low = price[i]
    nlow = i
  end
  i += 1
end 

printf("最も運賃が低いプランです\n")

printf("\t 運賃は %d 円です\n",price[nlow])

nlow と配列を使って、同じデータ行にあるデータを表示させよう。 完成はこちら。

本日の講義 / 講義ノート / 教員トップページ