データとプログラムを別にするには

データは、文字列を空白で分けて作成する。 空白は Tab キーで作ると作業が早く進む。 train.dat

つばさ                新庄          陸羽西線
とき                  新潟          いなほ
とき                  新潟          きらきらうえつ
羽田空港で飛行機    庄内空港      バス

改良版 train_b.rb を作る。

#!/usr/koeki/bin/ruby

combi = Array.new
n = 0

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

while train_data = gets
     if /(\S+)\s+(\S+)\s+(\S+)/ =~ train_data
	 combi[0] = $1
	 combi[1] = $2
	 combi[2] = $3
     end
  printf("経路 %d \n",n+1)
  printf("東京からは %s に乗り、%s で %s に乗り換えて酒田まで行きます \n", 
  combi[0],combi[1],combi[2])

  n += 1
  
end

print("検索終了\n")

実行方法と、 使われている仕組みをそれぞれみてみよう。

本日の講義目次 / 基礎プログラミング I / 2007 年度

Madoka Nishimura <madoka.koeki-u.ac.jp>