第8回 基礎プログラミング I レポート課題 氏名:xxxxxxxx 学籍番号:c109xxx 語学クラス:中国語 コース(系):政策 1.筆記問題 A. 大学で使っている学生証だと思った。カードキーを使うと、個人が特定でき、ド ミや学校に入れるからだ。また、カラオケやレンタルDVD店の会員証も個人を確 認できると思った。 B. 架空の学校で使われている学生証に登録してある、学生の架空データを作成し、 氏名、学籍番号、生年月日、発行日、有功期限を表示させるようにした。氏名だ けは、ちびまる子ちゃんの登場人物を使った。 作成したデータ #氏名 #学籍番号 #誕生日 #生別 #発行日 さくらももこ t2009001 05月08日 女 2009年04月01日 穂波たまえ t2009002 06月18日 女 2009年04月01日 花輪和彦 t2009003 12月31日 男 2009年04月01日 丸尾末男 t2009004 09月09日 男 2009年04月01日 伊藤ゆみ子 t2009005 08月13日 女 2009年04月01日 関口しんじ t2010006 07月25日 男 2010年04月01日 浜崎憲孝 t2010007 07月08日 男 2010年04月01日 冨田太朗 t2008008 06月19日 男 2008年04月01日 永沢君男 t2008009 10月26日 男 2008年04月01日 藤木茂 t200710 07月06日 男 2007年04月01日 野口笑子 t200711 11月12日 女 2007年04月01日 2.プログラ厶問題 まず、はじめに筆記問題で作成したファイル web_data_c109020.datを用いてデー タを変数に代入し、Kterm上で表示できるようなファイルweb_oder_c109020.rbを 作成する。それを変化させてプログラム問題を解いていく。 web_oder_c109020.rbを作成する。 a.設定 データを変数に代入させるという内容だったので、今までプログラムを作成する 際にやってきたことを活用すればできると考えた。授業中に作成したファイル exp_html.rb と「HTML 文書を自動で作る前に」の講義ノートを参考にし、プロ グラム問題A、B を 解くために必要なファイル web_oder_c109020.rb を作成す ればよいと考えた。 b.作成したプログラム #!/usr/koeki/bin/ruby namae = "さくらももこ" #名前をしまう変数 gakuseki = "t2009001" #学籍番号をしまう変数 tanjyoubi = "05月08日" #誕生月日をしまう変数 seibetu = "女" #性別をしまう変数 hakkoubi = "2009年04月01日" #発行日をしまう変数 # print 文を用いて文字を表示させる print("学生証\n") #学生証という文字を表示 print("ちびまる大学\n\n") #在学名を表示 # printf 文と変数を用いて文字を表示させる printf("氏名: %s\n" , namae) #氏名を表示 printf("学籍番号: %s\n" , gakuseki) #学籍番号を表示 printf("誕生月日: %s\n" , tanjyoubi) #誕生月日を表示 printf("性別: %s\n" , seibetu) #性別を表示 printf("発行日: %s\n\n" , hakkoubi) #発行日を表示 printf("%s を本学の学生として証明します。\n" , namae) #氏名を表記して文を表示 c.もとにしたプログラムからの変更点 授業中に作成したファイル exp_html.rb をもとにしようと考えていたが、ファイル exp_html.rb は授業中に改良が施されていたため、この段階で作成しようとする ファイルより、一歩進んだファイルとなっていた。そのため、このプログラム作 成には不必要な部分を取り除く必要があり、効率性に欠けると判断したため、今 回は「HTML 文書を自動で作る前に」の講義ノートに記載されているexp_html.rb をもととし、変更した。 変数を自分で作成したデータに合ったものに変更。 print、printf 文を自分で作成したデータと、設定した変数に合ったものに変更。 d.実行画面 pan{c109020}% ./web_oder_c109020.rb [~/public_html] 学生証 ちびまる大学 氏名: さくらももこ 学籍番号: t2009001 誕生月日: 05月08日 性別: 女 発行日: 2009年04月01日 さくらももこ を本学の学生として証明します。 e.結果の考察 Ktermで実行した結果、作成したファイルの内容がきちんと表示させることがで きた。このことから、変数への代入と、print、printf 文の使い方、実行の仕方に 誤りはないと考えられる。 A. a.設定 HTML の形式でkterm に表示させればいいので、先に作成したファイル web_oder_c109020.rbで HTML の形式を作成し、print、printf文で、形式全体を くくってしまえばいいと考えた。 b.作成したプログラム #!/usr/koeki/bin/ruby namae = "さくらももこ" #名前をしまう変数 gakuseki = "t2009001" #学籍番号をしまう変数 tanjyoubi = "05月08日" #誕生月日をしまう変数 seibetu = "女" #性別をしまう変数 hakkoubi = "2009年04月01日" #発行日をしまう変数 # print 文を用いて文字やタグを表示させる print("\n
\n") # HTML 書き始めのタグを表示 print("\n\n") print("\t%s を本学の学生として証明します。
\n" , namae) print("\n\n") # HTML 終了のタグを表示 c.もとにしたプログラムからの変更点 講義ノート「HTML 文書への変換予想」を参考にしながら、先に作成したプログ ラムweb_oder_c109020.rb に HTML要素を加えた。 d.実行画面 pan{c109020}% ./web_html_c109020.rb [~/public_html]さくらももこ を本学の学生として証明します。
e.結果の考察 実行結果からもわかるように、kterm に HTML形式で表示させることができた。 このことから、変数の設定、print 、printf文は正しく入力されていたと考えら れる。また、実行の仕方にも誤りはない。 B. a.設定 web上に表示できるようにするには、HTML のファイルを作成する必要がある。 今回の課題の中で、HTML 作成の準備は整っているので、作成してあるファイル をから、別なファイルに HTML 文書に必要な所だけを出力させる設定を加えれば よいと考えた。 b.作成したプログラム #!/usr/koeki/bin/ruby namae = "さくらももこ" #名前をしまう変数 gakuseki = "t2009001" #学籍番号をしまう変数 tanjyoubi = "05月08日" #誕生月日をしまう変数 seibetu = "女" #性別をしまう変数 hakkoubi = "2009年04月01日" #発行日をしまう変数 open("c109020.html","w") do |html| #指定したファイルに書き込む html.print("\n\n") # HTML 書き始めのタグを表示 html.print("\n\n") html.print("\t%s を本学の学生として証明します。
\n" , namae) html.print("\n\n") # HTML 終了のタグを表示 end c.もとにしたプログラムからの変更点 プログラム問題Aで作成したweb_html_c109020.rbに、open -- endの書き込みモー ドを使用した。(書き込みの場合は"w") d.実行画面 表示された画面のコピーとアドレス 学生証 ちびまる大学 * 氏名: さくらももこ * 学籍番号: t2009001 * 誕生月日: 05月08日 * 性別: 女 * 発行日: 2009年04月01日 さくらももこ を本学の学生として証明します。 http://roy/~c109020/c109020.html ソースの表示は ctrl+u e.結果の考察 open -- end を使用して書き込みを行ったファイルc109020.html を開くと、出 力結果が表示された。よって、ブラウザを使って c109020.html を開くことがで きた。これらの実行結果より、open -- end の構成と、書き込みモードの設定、 操作内容は正しかったと考えられる。 3.感想 全体的に頑張りました。大部分を自分でこなすことができました。実行の際に、エ ラーが連発して焦りました。よく見てみると単純なミスが多かったです。落ち着 いてやることを心掛けたいと思います。 今回の課題は、楽しくできました。授業では、table タグを使用していましたが、 箇条書きのパターンにしてみました。 装飾に関しては、cssを作ってみたのですが、web上で更新されませんでした。 ktermで gimp を呼び出して色指定もしてみました。せっかく楽しくなってきた のにweb_open_w_c109020.rb で読み込ませることができなかったので悔しいです。 今回私が作成したデータは、学生証のことだったので、読み込ませることができ たなら、gimp を使って似顔絵も描いて学生証っぽいページにしてみたかったで す。 cssの読み込みに成功したら挑んでみたいと思います。 参考文献 ・http://roy/~madoka/2010/r1/08/08_07_theme_02_preperation.html 基礎プログラミング I 第8回「電子チケットを作ろう」HTML 文書を自動で作る 前に(講義ノート) 西村まどか先生 ・http://roy/~madoka/2010/r1/08/08_08_theme_03_htmlcheck.html 基礎プログラミング I 第8回「電子チケットを作ろう」HTML 文書への変換予想 (講義ノート) 西村まどか先生 ・http://roy/~madoka/2010/r1/08/08_09_theme_04_tabletag.html 基礎プログラミング I 「電子チケットを作ろう」table tag 出力 (講義ノート) 西村まどか先生 ・http://roy/~madoka/2010/r1/08/08_10_theme_05_writehtml.html 基礎プログラミング I 第8回「電子チケットを作ろう」HTML 文書の打ち出し (講義ノート) 西村まどか先生 ・http://roy/~madoka/2009/r1/08/crt.html 2009年度 基礎プログラミング I 第08回 電子チケットを作ろう レポート評価 西村まどか先生 ・http://ja.wikipedia.org/wiki/ ちびまる子ちゃんの登場人物 Wikipedia 作者:不明 共同学習者 小松 由里 協力してくれた先輩 4年 菅原 有佑 先輩