第 8 回 ことはじめ レポート課題 氏名:細田 洋平 学籍番号:c1101773 語学クラス:英語6 コース(系):政策マネジメントコース 1.A あらかじめ用意された複数の選択肢の中から、特定のものだけを選択して呼 び出す、という点で似ているのではないかと思った。 1.B .htacces というディレクトリの中に .html や .rb を作ることで CGI とし て機能する。 .html は選択肢を、 .rb はその結果を表示する。 1.C これは、前回の授業で作った ticket.rb を利用して解説を行う。 # .rb に結果を送信させる # リセットさせる 1.D 授業の講義ノートを使用して解説を行う。 require 'cgi' # CGI を使う cgi = CGI.new("html4") # CGI を HTML 文書に使う print("Content-type: text/html; charset=EUC-JP\n\n") # 日本語コードの定義 arv = cgi["arrive"] # arrive を arv に省略して入力し、arrive = arv とい うことを覚え込ませる。 # これにより html を使用できるようになる。 2.A 元にしたプログラム : 授業で作成した ticket.rb ・def を追加した ・変数の変更 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ #!/usr/koeki/bin/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(s,t) # s = 出発点(start) 、t = 到着点(totilyaku) if s > t # もし出発点の値が到着点の値より大きい場合 120 + (s - t) / 2 * 20 # 120(基本料金) + (start - totilyaku) / 2km * 20円 elsif s < t # もし出発点の値が到達点の値より小さい場合 120 + (t - s) / 2 * 20 # 120(基本料金) + (totilyaku - start) / 2km * 20円 end end def kyori(st,ar) # st = 出発点(start)、ar = 到着点(arrive) if st > ar # もし出発点の値が到着点の値より大きい場合 st - ar # 出発点までの距離 - 到着点までの距離 elsif st < ar # もし出発点の値が到着点の値より小さい場合 ar - st # 到着点までの距離 - 出発点までの距離 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 # 2番目のデータを整数に。= data[$1] end end end syuppatu = data[str] # データから取り出した出発駅の部分を syuppatu totilyaku = data[arv] # データから取り出した到着駅の部分を totilyaku print("\n") print("
\n") print("\t\t出発駅:%s -- 到着駅:%s
\n", str, arv) printf("\t料金: %d [円]
\n", ryokin(syuppatu,totilyaku)) printf("\t走行距離: %d [km]
\n", kyori(syuppatu,totilyaku)) print("
\n") print("\n") print("\n") ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * html「ticket.html」 * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~このプログラムは、東北公益文科大学 細田 洋平 が著作権を保有しています。
プログラムの入手・変更は、自由に行っても構いません。
なお、このプログラムの取り扱いによって生じた問題については一切責任を 負いませんのでご了承下さい。
このプログラムに対する感想・意見・苦情など言いたいことがありましたら、
c110177@e.koeki-u.ac.jp