データは、文字列を空白で分けて作成する。 空白は Tab キーで作ると作業が早く進む。 train.dat
つばさ | 新庄 | 陸羽西線 | 13350 |
とき | 新潟 | いなほ | 13880 |
とき | 新潟 | きらきらうえつ | 12790 |
羽田空港で飛行機 | 庄内空港 | バス | 22810 |
改良版 ary_stdin.rb を作る。
#!/usr/koeki/bin/ruby -Ke first = Array.new 最初に乗る列車名 change = Array.new 乗り換え先 second = Array.new 次に乗る列車名 fee = Array.new 料金 n = 0 経路をしまう変数 while train = gets
p trainend p first p change p second p fee i = 0 出力する経路を数える変数 while i < first.lengthif /(\S+)\s+(\S+)\s+(\S+)\s+(\d+)/ =˜ train
p train first[n] = $1 change[n] = $2 second[n] = $3 fee[n] = $4.to_i n += 1endprintf("経路%d: \n", i ) printf("東京からは%sに乗り%sで%sに乗り換えて酒田まで行きます\n",
first[i], change[i], second[i])i += 1printf("料金は%d円です\n", fee[i])
end print("検索終了\n")
Array.new
配列を新規につくる method
実行方法と使われている仕組みをそれぞれみてみよう。