第 9 回 ことえらび レポート課題 氏名: 松田 大輝 学籍番号: c1101804 語学クラス: 中国語 コース(系): 地域共創コース 1、筆記問題 A、ラジオボタンとは、複数の選択肢の中から 1 つだけ選ぶ方法である。 具体的に言うと講義ノートに書いてあるように 自由席、指定席、スーパーシートの中から 1 つを選ばせている。 実際のプログラムを見てみる。 自由席 指定席 スーパーシート input typeで ラジオボタンを作ることを定義している。 name でラジオボタンを区別、判断するために使用。 value で 選択されたものを <> 後の値としてプログラムに送られる。 また、checked と入れることによって、最初から 既定値(ここでは「指定席」)に設定できるようになる。 B、チェックボタンとは、複数の選択肢の中から いくつか選べる方法である。 具体的に言うと講義ノートに書いてあるように 豪華和食バイキング、土産物クーポン、はえぬき詰め放題、喫煙 の中から複数、選ばせている。 豪華和食バイキング 土産物クーポン はえぬきプレゼント 喫煙 input typeで ラジオボタンを作ることを定義している。 name でラジオボタンを区別、判断するために使用。 value で 選択されたものを <> 後の値としてプログラムに送られる。 また、checked と入れることによって、最初から 既定値(ここでは「指定席」)に設定できるようになる。 そして、選択されているものをまた選択すると 選択されていない状態に戻ってしまう。 C、作成した画像 http://roy/~c110180/advertise2/char_r2_c110180.png 題名: 「おむルビまん」 解説:「おむすび」と「ルビー」を混ぜて「おむルビまん」とした。 まず、おむすびを描いてからそこから、変化させていった。 作った方法: まず三角形を描き、その三角の角をとっていった。 そこに、丸や四角を使用し海苔や目を描いた。 工夫した点: 一番の工夫した点は三角の角をとったことである。 講義中におしえてもらったが忘れてしまい 試行錯誤の上でできた。 2、プログラム問題 今回作成したプログラム問題のリンクアドレスは http://roy/~c109xxx/advertise2/rubycgi/fork.html となっている。 A、 1、CGI の題名とその意図 CGI の題名 を「カウンタ」と設定した。 意図としては 訪問人数を調べるプログラムのため この題名にした。 そして、今回のレポート課題に記載されている 「例」や「構造」がどのように 動いているか理解するためも実際に作成してみた。 2、考えた設定 自分のホームページにどれほどの人数が訪問してきたか 計算してくれるプログラムを作成した。 また、見やすいように色などを使用し 綺麗に表示されるようにした。 3、作成したプログラム(説明) #!/usr/koeki/bin/ruby # 最初に書かなければいけないもの require 'cgi' # ここで CGI 変数を使用することを定義した cgi = CGI.new("html4") # CGI を HTML 文書で使用することを定義した print("Content-type: text/html; charset=EUC-jp\n\n") # 上の2文で受け取ったデータを使用しCGIを実行することを定義した houmon = 0 # ここで houmon の値を 0 と定義した open("kaunta.txt" , "r") do |suuti| # open メソッドを使用しファイルからデータを読み込んでいる # ここでのファイルとは kaunta.txt # モードは読み込み専用である "r" を使用した # 変数 suuti と定義した while kazu = suuti.gets # 繰り返しを継続する条件であるwhileを使用 if /(\d+)/ =~ kazu # ファイルからデータを読み込み kazu に代入させた # メタ文字は数字にマッチさせる \d と # 1回以上の繰り返しにマッチさせる + を使用 houmon = $1.to_i # $1 の値を 変数 houmon に代入させた end # if の end end # while の end end # open の end print("\n") # ここから html 文が始まる print("\n") # 本文前の タイトルやスタイルを定義するための # 場所である head が始まる print("訪問者数\n") # ここでタイトルを定義した print("\n") # ここで リンクを fork.css につなぎ # Webページの文字の大きさや色等の見栄えを変更させている print("\n") # ここで 10 行前の head を閉じた print("\n") # ここから 本文を書くための body が始まる print("

訪問者数を調べています

\n") print("


%d 人

\n",houmon) # printf を用いて 訪問人数の結果を表示させた print("\n") # ここで 3 行前の h3 を閉じた print("
\n") # 改行するためにこの文章を作成 print("\n") # ここで body を閉じた print("\n") # ここで html を閉じた houmon += 1 # houmon の値( 0とした) に 1ずつ加算されるようにした open("kaunta.txt" , "w") do |suuti2| # open メソッドを使用しファイルからデータを読み込んでいる # ここでのファイルとは kaunta.txt # モードは書き込み専用専用である "r" を使用した # 変数 suuti2 と定義した suuti2.printf("%d\n",houmon) # printf を使用し houmonの値を表示 end # open の end 4、もとにしたプログラムからの変更点 今回のレポート課題のところに記載されていた 「構造」を基にした。 変更点は プログラム内の変数を自分でわかりやすいよいに 変更していった。 5、実行結果 ーーーーーーーーーーーーーーーーーーーー 訪問者数を調べています この時点で訪れた人数は 41 人 ーーーーーーーーーーーーーーーーーーーーーーーー 訪問者数を調べています この時点で訪れた人数は 42 人 ーーーーーーーーーーーーーーーーーーーーーー 6、結果の考察 ホームページ上で訪問するたびに 1 ずつ数字が加算されていた。 このように、正しく 1ずつ加算されているか kterm でも調べてみる。 ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー pan{c110180}% ./kaunta.rb [~/public_html/advertise2/rubycgi] (offline mode: enter name=value pairs on standard input) Content-type: text/html; charset=EUC-jp 訪問者数

訪問者数を調べています



この時点で訪れた人数は

43 人


ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー pan{c110180}% ./kaunta.rb [~/public_html/advertise2/rubycgi] (offline mode: enter name=value pairs on standard input) Content-type: text/html; charset=EUC-jp 訪問者数

訪問者数を調べています



この時点で訪れた人数は

44 人


ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー kterm で調べてみても訪問人数は 正しく 1ずつ加算されていたため プログラムが正しいことが確認できた。 B、 1、CGI の題名とその意図 CGI の題名を「計算」と設定した。 意図としては、ただ入力してその結果が表示されるだけでなく ラジオボタン方式を使用しホームページ上で 計算してくれるプログラムのためこの題名にした。 2、考えた設定 ホームページ上で計算できる CGI スクリプトの プログラムを作成した。数値を入力してもらい ラジオボタンで計算方法を選んでもらうようにした。 また、割った時は小数点以下も表示されるようにした。 3、作成したプログラム(説明) ーーーーーーーーーーーー入力部分 keisan.htmlーーーーーーーーーーーー 計算プログラム

計算プログラム