11 月 28 日 第 9 回レポート 「CGI スクリプトを作ってみよう」 学籍番号:c106XXXX 氏名:XXXXXXXX 語学クラス:英語XX 系:環境系 1. 筆記問題 A. ◎予想◎ 数字の並び換えが行なわれる。 ◎証明◎ momo.rbのプログラム (a)作成したプログラム #!/usr/koeki/bin/ruby momo=[0,9,7] komomo=[3,4,5] momo2=komomo+momo #momo2は変数。komomo+momoを実行させる。 p momo2 #komomo+momoをそのまま実行させる。 p momo2.sort #komomo+momoをsortで実行させる。 p momo2.sort.reverse #komomo+momoをsort.reverseで実行させる。 (b)実行結果 irsv{c106048}% ./momo.rb [~/Ruby] [3, 4, 5, 0, 9, 7] [0, 3, 4, 5, 7, 9] [9, 7, 5, 4, 3, 0] (c)考察 sortだけを取り入れると、momo=[0,9,7]とkomomo=[3,4,5]の数字が組み合わさり、 数字の小さい順に並べられた。 sort.reverseを取り入れると、momo=[0,9,7]とkomomo=[3,4,5]の数字が組み合わ さり、数字の大きい順に並べられた。 B. 配列は0番目から数えるため、alphabet = ["a","b",...,"z"]との順に"0"から数 えて行くことによって、alphabet[15]は"p"で、alphabet[28]はアルファベット が28文字もないので、表示されない。 2.CGI スクリプトプログラム。 ●tyousa.htmlとtyousa.rbについて● a. 考えた設定 日々の生活のだらしなさをチェックし、結果を表示させるように考えた。 今日習ったCGIを取り入れ、アンケート風にする。 b. 作成したプログラムコードそのもの ●tyousa.htmlのプログラム● 生活のダラダラ度チェック

生活のダラダラチェック

あなたの日常生活は大丈夫??

氏名:
性別:
男性
女性
どちらでもない
年齢 :

以下の各項目について当てはまるものにチェックをつけてください。
質問[1]起床について:
早起き
時間がバラバラ
だるさがある
質問[2]食事について:
三食しっかり食べる
どこか一食抜かす
一食しか食べない
質問[3]運動について:
毎日運動をする
週に1度以上はする
全くしない
質問[4]アルバイトについて:
している
していない
質問[5]テレビについて:
3時間以上みる
5時間以上
3時間未満

●tyousa.rbのプログラム● #!/usr/bin/env ruby require 'cgi' c = CGI.new("html4") print "Content-type: text/html; charset=EUC-JP\n\n" namae = c["name"] seibetsu = c["sei"] nennrei = c["age"] q1 = c["asa"] q2 = c["food"] q3 = c["sports"] q4 = c["part"] q5 = c["tv"] point = q1.to_i + q2.to_i + q3.to_i + q4.to_i+ q5.to_i #valueの数字を取ってきて計算させる print (" 〜調査結果〜 \n") print ("

〜調査結果〜

\n") print ("

#{namae}さんの調査結果

\n") print ("◎性別:#{seibetsu}◎年齢#{nennrei})\n") print ("

あなたがチェックしたポイントは#{point}個です。

\n") print "

" if point > 10 print "

良い調子です。このままの生活スタイルを維持しましょう!!\n

" elsif point >6 print "

普通です。日々の生活に何か一工夫を取り入れてみては??\n

" elsif point >3 print "

生活スタイルが乱れてきているようです。規則正しい生活をしましょう!!\n

" elsif point == 2 print "

生活が乱れすぎですね。何か運動をしたり、体力作りに励んでみましょう!!\n

" else print "

やる気ないですね。日々の生活にメリハリをつけましょう!!\n

" end print "

\n" print "\n" print "\n" c. もとにしたプログラムからの変更点 ●tyousa.html● 質問項目をラジオボタンに変更し、色をつけ見やすさを取り入れた。 ●tyousa.rb● 変数の変更と数字の変更をし、調査家結果を数字によって違わせるようにした。 d. プログラムを実行した結果画面 〜調査結果〜

〜調査結果〜

ルビ緒さんの調査結果

◎性別:男性◎年齢30代)

あなたがチェックしたポイントは8個です。

普通です。日々の生活に何か一工夫を取り入れてみては??

e.結果と考察 ●確かめ● irsv{c106048}% bc -l 2+2+1+1+2 8 よって、計算は間違っていないことが分かった。 初めtyousa.rbが起動しなく、いろいろ試行錯誤繰り返し、つけ足したり加えた りしていったら、今のような形におさまりました。ラジオボタンを使うと、選択 もしやすくなると感じました。 f. 参考文献 西村まどか先生のHP 第9回: CGI スクリプトを作ってみよう "http://roy/~madoka/2007/r2/09/index.html"より クラスによるスタイル指定 "http://roy/web/02/class.html"より 神田先生のHP "http://roy/~naoya/cgi-bin/10j.html"より 3.GIMP 4.感想。 前期は全てが知らないことばかりで、ついていくのにやっとでしたが、後期になっ て、だんだんとプログラム作成にも工夫や閃きがでてきて自分なりに満足できる ようなものを作成することができました。今まで未知の世界だったものが、日常 生活の中で様々活用されていることに気付かされ、そういったプログラムを作成 できることに楽しさが足されていきました。後期で学んだHashやdefでは様々な ことができるようになり、計算させるプログラムや、プリント文で多様なパター ンができました。後期の中で最高傑作で作成できたのは、育成ゲームです。プロ グラムの量も半端でなかった分時間も掛かりましたが、納得したものができたと いう達成感と満足感で満たされました。様々なmethodも学べました。 これからはグループ課題なので、協力して良いプログラムを作成できるように頑 張りたいです。 ●トップページ● http://roy/~c106048/