第8回 ことはじめ レポート課題 氏名:馬宮巧 学籍番号:c1101833 語学クラス:中国語 コース(系):政策マネジメント 1、A、html文書にあらかじめ入力されたデータをプログラムを持ってくるという 部分が、Hashのプログラム内に入力されたデータをそのまま持ってくる部 分と似ていると思う。 B、.htaccess で .rb と付いたプログラムを CGI として扱う。 .html は選択肢を表示し、その結果を .rb で表示するようになっている。 C、
# .rb に選択した結果を渡す #選択した結果を reset する
D、 require 'cgi' # CGI を使う cgi = CGI.new("html4") # CGI を html文書に使う print("Content-type: text/html; charset=EUC-jp\n\n") # 日本語コードの 定義 arv = cgi["arrive"] #CGI から取ってくるうち、arriveの部分をarvにす る 2、プログラム問題 考えた設定 酒田駅から鶴岡駅ヘ行く人のための発券システム アドレス「http://roy/c110183/rubycgi/ticket.html」 #!/usr/bin/env ruby require 'cgi' # CGI を使う cgi = CGI.new("html4" ) # CGI を html文書に使う data = Hash.new # データの Hash を使う print("Content-type: text/html; charset=EUC-jp\n\n") # 日本語コードの定義 def ryokin(h,o) if h > o # もし、hazimeの値 が owariの値 より大きい時 120 + (h - o) / 2 * 20 elsif h < o # もし、hazimeの値 が owariの値 より小さい時 120 + (o - h) / 2 * 20 end end def kyori(ha,ow) # h = 出発駅、o = 到着駅 if ha > ow # もし、hazimeの値 が owariの値 より大きい時 ha - ow elsif ha < ow # もし、hazimeの値 が owariの値 より小さい時 ow - ha end end str = cgi["start"] # CGI から取ってくるうち、start の部分を str とする arv = cgi["arrive"] # CGI から取ってくるうち、arrive の部分を arv とする open("ticket.dat", "r") do |station| while line = station.gets if/(\S+)\s+(\S+)/ =~ line data[$1] = $2.to_i end end end hazime = data[str] # データから取り出した出発駅の部分を hazime とする owari = data[arv] # データから取り出した到着駅の部分を owari とする print("\n") print("\n") print("\t------------------------------------------------------------
\n") print("\t出発駅:%s -- 到着駅:%s
\n", str, arv) printf("\t料金: %d [円]
\n", ryokin(hazime,owari)) printf("\t走行距離: %d [km]
\n", kyori(hazime,owari)) print("
\n") print("どうぞ、快適な旅をお楽しみ下さい。
\n") print("------------------------------------------------------------
\n") print("\n") print("\n") ________________________________________________________________________________
|
|