第8回 基礎プログラミング II レポート課題 氏名:宮川史礼 学籍番号:C1071948 語学クラス:英語1 コース(系):社会系 1.筆記問題 A. CGI変数とHashの似ている点は、選択したものに対応するものを引き出してくれ る点だと思う。 B. ・htaccess…CGIスクリプトとして認識できるようにする。 ・*.html…入力をうながすページ。 ・*.rb…*.htmlで入力されたものを読み込み、結果表示するプログラム。 これら三つは、いずれか一つが欠けていては動作が成立しない。 C. *.html で CGI 変数を渡すのは、
これと、 だと思われる。 D. *.rb で CGI 変数を受け取って HTML 文書にするしくみは、 require 'cgi' CGI 変数 = CGI.new("html4") print("Content-type: text/html; charset=EUC-JP\n\n") だと思われる。 2.プログラム問題 A. オンライン券売機

#!/usr/bin/env ruby require 'cgi' cgi = CGI.new("html4") print("Content-type: text/html; charset =EUC-JP\n\n") lea = cgi["iki"] arv = cgi["kaeri"] hatu=120 if lea=="酒田" a=166.9 elsif lea=="東酒田" a=163.7 elsif lea=="砂越" a=160.4 elsif lea=="北余目" a=157.4 elsif lea=="余目" a=154.7 elsif lea=="西袋" a=151.1 elsif lea=="藤島" a=146.0 elsif lea=="鶴岡" a=139.4 end if arv=="酒田" b=166.9 elsif arv=="東酒田" b=163.7 elsif arv=="砂越" b=160.4 elsif arv=="北余目" b=157.4 elsif arv=="余目" b=154.7 elsif arv=="西袋" b=151.1 elsif arv=="藤島" b=146.0 elsif arv=="鶴岡" b=139.4 end if a>b total=hatu+((a-b+0.5).to_i*20) elsif a\n") print("\n") print("") print("オンライン券売機\n") print("\n") print("\n") printf("

出発駅は %s ですね

\n", lea) printf("

終着駅は %s ですね

\n", arv) printf("

料金は %d 円です

\n", total) print("\n") print("\n") 実行結果 roy{c107194}% ./tiket.rb [~/public_html/rubycgi] (offline mode: enter name=value pairs on standard input) iki="酒田" kaeri="鶴岡" Content-type: text/html; charset =EUC-JP オンライン券売機

出発駅は 酒田 ですね

終着駅は 鶴岡 ですね

料金は 680 円です

roy{c107194}% ./tiket.rb [~/public_html/rubycgi] (offline mode: enter name=value pairs on standard input) iki="砂越" kaeri="藤島" Content-type: text/html; charset =EUC-JP オンライン券売機

出発駅は 砂越 ですね

終着駅は 藤島 ですね

料金は 400 円です

B. http://roy/~c107194/logo_r2_c107194.png C. http://roy/~c107194/advertise2/r2_c107194.pdf 3.感想 筆記問題やプログラム問題に関しては、今回しっかりと授業で取り組んでいたも ののストックがあったわけなので、そちらの方はわりとすんなりはかどるものだ った。問題はプログラミングの授業についての感想文だったが、何を書くか少し 考えた上で、自分は再々履修シャナわけなので、その分のタイムロスの中でで抱 いた屈託のいくつかを書いてみた。多少ネガティブな感じがするので、予めここ で明かしておいてエクスキューズを図ろうと思う。 4.参考文献 基礎プログラミング II 第8回 CGIことはじめ 「利用者にデータを入力させる部品」 http://roy/~madoka/2010/r2/08/08_05_theme_04_form.html 基礎プログラミング II 第8回 CGIことはじめ 「動作プログラム作成」 http://roy/~madoka/2010/r2/08/08_08_theme_07_ruby.html 協力してくれたTA 工藤智也