第8回 基礎プログラミング I レポート課題 氏名:xxxxxxxxx 学籍番号:c109xxx 語学クラス:英語1 コース:社会福祉 1 筆記問題 A 住民基本台帳や選挙名簿がある。これらの名簿から裁判員を選出したり、選挙 の通知をすることもできる。 B 作成したデータ 公益ルビ緒 50095550 東京地方裁判所 公益ルビ姫 94045067 山形地方裁判所 公益ポン太 30004565 名古屋地方裁判所 公益平蔵 59590356 富山地方裁判所 公益由紀夫 50097006 東京地方裁判所 本間綱吉 11004045 さいたま地方裁判所 徳川家康 49394993 前橋地方裁判所 公益太郎 33929324 福島地方裁判所 公益花子 20330203 仙台地方裁判所 山形二郎 40094494 水戸地方裁判所 2 プログラム問題 a 考えた設定 日本で新しく開始された裁判員制度の選考にあたり、その呼出しの確認をイン ターネットで確認できるプログラムを作成した。 b もとにしたプログラム exp_html.rbをもととした。変更点は、わかりやすいようにレイアウト線も表示 させた。 c 作成したプログラム web_order_c109058.rb #!/usr/koeki/bin/ruby #インタプリタ宣言文 name= Array.new #外部からデーターをとって来て、それをnameとする number = Array.new #外部からデーターをとって来て、それをnumberとする saibansyo= Array.new #外部からデーターをとって来て、それをsaibansyoとする n =0 #n(配列)は0番目からはじめる open("web_data_c109058.dat","r") do |saiban| #外部データとはweb_data_c109058.datであることを定義しそれを読み込む while saibanin =saiban.gets #外部からデータをとって来ることを繰り返す if /(\S+)\s+(\d+)\s+(\S+)/ =~ saibanin #html(ホームページの形式)であることを宣言する name[n] =$1 #外部データの1つ目の要素をnameとする number[n] =$2.to_i #外部データの2つ目の要素をnumberとする saibansyo[n] =$3 #外部データの3つ目の要素をsaibansyoとする printf("住民基本台帳No%d\t%s様に法務省からのお知らせです。\n",number[n],name[n]) #内容表示 print("この度、あなたは裁判員に選ばれました\n") #内容表示 printf("つきましては、事前面接を行ないますので、所定の日にちに%sまでお集まりください\n",saibansyo[n]) #内容表示 printf("集合場所 %s\n",saibansyo[n]) #内容表示 end #whileの終わり end #ifの終わり n += 1 #nに1を足すことにより次の行に移る end #openの終わり web_html_c109058.rb #!/usr/koeki/bin/ruby #インタプリタ宣言文 name= Array.new #外部からデーターをとって来て、それをnameとする number = Array.new #外部からデーターをとって来て、それをnumberとする saibansyo= Array.new #外部からデーターをとって来て、それをsaibansyoとする n =0 #n(配列)は0番目からはじめる open("web_data_c109058.dat","r") do |saiban| #外部データとはweb_data_c109058.datであることを定義しそれを読み込む print("\n") #html(ホームページの形式)であることを宣言する print("\n") print("\n") #タイトルを表示させる print("<body>\n") #本文であることを表示させる print("裁判員候補選任のご案内") #タイトルの内容 while saibanin =saiban.gets #外部からデータをとって来ることを繰り返す if /(\S+)\s+(\d+)\s+(\S+)/ =~ saibanin #もし外部データが文字→空白→数字→空白→文字なら name[n] =$1 #外部データの1つ目の要素をnameとする number[n] =$2.to_i #外部データの2つ目の要素をnumberとする saibansyo[n] =$3 #外部データの3つ目の要素をsaibansyoとする print("---------------------------------------------------------------------------------------------------------------------------------------------\n") #レイアウト線 printf("<p>住民基本台帳No%d\t%s様に法務省からのお知らせです。</p>\n",number[n],name[n]) #内容表示 print("この度、あなたは裁判員に選ばれました\n") #内容表示 printf("つきましては、事前面接を行ないますので、所定の日にちに%sまでお集まりください\n",saibansyo[n]) #内容表示 printf("<h1><p>集合場所 %s<\p><\h1>\n",saibansyo[n]) #内容表示 print("---------------------------------------------------------------------------------------------------------------------------\n") #レイアウト線 end #whileの終わり end #ifの終わり n += 1 #nに1を足すことにより次の行に移る end #openの終わり print("</body>\n") #bodyをとじる print("</html>\n") #htmlを閉じる d実行結果 pan{c109058}% ./web_order_c109058.rb [~/public_html/web08] 住民基本台帳No50095550 公益ルビ緒様に法務省からのお知らせです。 この度、あなたは裁判員に選ばれました つきましては、事前面接を行ないますので、所定の日にちに東京地方裁判所までお集まりください 集合場所 東京地方裁判所 住民基本台帳No94045067 公益ルビ姫様に法務省からのお知らせです。 この度、あなたは裁判員に選ばれました つきましては、事前面接を行ないますので、所定の日にちに山形地方裁判所までお集まりください 集合場所 山形地方裁判所 住民基本台帳No30004565 公益ポン太様に法務省からのお知らせです。 この度、あなたは裁判員に選ばれました つきましては、事前面接を行ないますので、所定の日にちに名古屋地方裁判所までお集まりください 集合場所 名古屋地方裁判所 住民基本台帳No59590356 公益平蔵様に法務省からのお知らせです。 この度、あなたは裁判員に選ばれました つきましては、事前面接を行ないますので、所定の日にちに富山地方裁判所までお集まりください 集合場所 富山地方裁判所 住民基本台帳No50097006 公益由紀夫様に法務省からのお知らせです。 この度、あなたは裁判員に選ばれました つきましては、事前面接を行ないますので、所定の日にちに東京地方裁判所までお集まりください 集合場所 東京地方裁判所 住民基本台帳No11004045 本間綱吉様に法務省からのお知らせです。 この度、あなたは裁判員に選ばれました つきましては、事前面接を行ないますので、所定の日にちにさいたま地方裁判所までお集まりください 集合場所 さいたま地方裁判所 住民基本台帳No49394993 徳川家康様に法務省からのお知らせです。 この度、あなたは裁判員に選ばれました つきましては、事前面接を行ないますので、所定の日にちに前橋地方裁判所までお集まりください 集合場所 前橋地方裁判所 住民基本台帳No33929324 公益太郎様に法務省からのお知らせです。 この度、あなたは裁判員に選ばれました つきましては、事前面接を行ないますので、所定の日にちに福島地方裁判所までお集まりください 集合場所 福島地方裁判所 住民基本台帳No20330203 公益花子様に法務省からのお知らせです。 この度、あなたは裁判員に選ばれました つきましては、事前面接を行ないますので、所定の日にちに仙台地方裁判所までお集まりください 集合場所 仙台地方裁判所 住民基本台帳No40094494 山形二郎様に法務省からのお知らせです。 この度、あなたは裁判員に選ばれました つきましては、事前面接を行ないますので、所定の日にちに水戸地方裁判所までお集まりください 集合場所 水戸地方裁判所 pan{c109058}% ./web_html_c109058.rb [~/public_html/web08] <html> <head> <title> <body> 裁判員候補選任のご案内--------------------------------------------------------------------------------------------------------------------------------------------- <p>住民基本台帳No50095550 公益ルビ緒様に法務省からのお知らせです。</p> この度、あなたは裁判員に選ばれました つきましては、事前面接を行ないますので、所定の日にちに東京地方裁判所までお集まりください <h1><p>集合場所 東京地方裁判所<p><h1> --------------------------------------------------------------------------------------------------------------------------- --------------------------------------------------------------------------------------------------------------------------------------------- <p>住民基本台帳No94045067 公益ルビ姫様に法務省からのお知らせです。</p> この度、あなたは裁判員に選ばれました つきましては、事前面接を行ないますので、所定の日にちに山形地方裁判所までお集まりください <h1><p>集合場所 山形地方裁判所<p><h1> --------------------------------------------------------------------------------------------------------------------------- --------------------------------------------------------------------------------------------------------------------------------------------- <p>住民基本台帳No30004565 公益ポン太様に法務省からのお知らせです。</p> この度、あなたは裁判員に選ばれました つきましては、事前面接を行ないますので、所定の日にちに名古屋地方裁判所までお集まりください <h1><p>集合場所 名古屋地方裁判所<p><h1> --------------------------------------------------------------------------------------------------------------------------- --------------------------------------------------------------------------------------------------------------------------------------------- <p>住民基本台帳No59590356 公益平蔵様に法務省からのお知らせです。</p> この度、あなたは裁判員に選ばれました つきましては、事前面接を行ないますので、所定の日にちに富山地方裁判所までお集まりください <h1><p>集合場所 富山地方裁判所<p><h1> --------------------------------------------------------------------------------------------------------------------------- --------------------------------------------------------------------------------------------------------------------------------------------- <p>住民基本台帳No50097006 公益由紀夫様に法務省からのお知らせです。</p> この度、あなたは裁判員に選ばれました つきましては、事前面接を行ないますので、所定の日にちに東京地方裁判所までお集まりください <h1><p>集合場所 東京地方裁判所<p><h1> --------------------------------------------------------------------------------------------------------------------------- --------------------------------------------------------------------------------------------------------------------------------------------- <p>住民基本台帳No11004045 本間綱吉様に法務省からのお知らせです。</p> この度、あなたは裁判員に選ばれました つきましては、事前面接を行ないますので、所定の日にちにさいたま地方裁判所までお集まりください <h1><p>集合場所 さいたま地方裁判所<p><h1> --------------------------------------------------------------------------------------------------------------------------- --------------------------------------------------------------------------------------------------------------------------------------------- <p>住民基本台帳No49394993 徳川家康様に法務省からのお知らせです。</p> この度、あなたは裁判員に選ばれました つきましては、事前面接を行ないますので、所定の日にちに前橋地方裁判所までお集まりください <h1><p>集合場所 前橋地方裁判所<p><h1> --------------------------------------------------------------------------------------------------------------------------- --------------------------------------------------------------------------------------------------------------------------------------------- <p>住民基本台帳No33929324 公益太郎様に法務省からのお知らせです。</p> この度、あなたは裁判員に選ばれました つきましては、事前面接を行ないますので、所定の日にちに福島地方裁判所までお集まりください <h1><p>集合場所 福島地方裁判所<p><h1> --------------------------------------------------------------------------------------------------------------------------- --------------------------------------------------------------------------------------------------------------------------------------------- <p>住民基本台帳No20330203 公益花子様に法務省からのお知らせです。</p> この度、あなたは裁判員に選ばれました つきましては、事前面接を行ないますので、所定の日にちに仙台地方裁判所までお集まりください <h1><p>集合場所 仙台地方裁判所<p><h1> --------------------------------------------------------------------------------------------------------------------------- --------------------------------------------------------------------------------------------------------------------------------------------- <p>住民基本台帳No40094494 山形二郎様に法務省からのお知らせです。</p> この度、あなたは裁判員に選ばれました つきましては、事前面接を行ないますので、所定の日にちに水戸地方裁判所までお集まりください <h1><p>集合場所 水戸地方裁判所<p><h1> --------------------------------------------------------------------------------------------------------------------------- </body> </html> e考察 今回使ったhtmlをまとめる p 改行 h1 見出し html htmlであることを宣言 title タイトル body 本文 B問題 a考えた設定 A問題の続きweb_open_w_c_c109058.rb を作成した b もとにしたプログラム web_html_c109058.rbのデータをホームページに書きこむためopen w(書きこみモー ド)とそれに対応するendを追加した。 c作成したプログラム #!/usr/koeki/bin/ruby #インタプリタ宣言文 name= Array.new #外部からデーターをとって来て、それをnameとする number = Array.new #外部からデーターをとって来て、それをnumberとする saibansyo= Array.new #外部からデーターをとって来て、それをsaibansyoとする n =0 #n(配列)は0番目からはじめる open("web_data_c109058.dat","r") do |saiban| #外部データとはweb_data_c109058.datであることを定義しそれを読み込む open("c109058.html","w") do |syorui| syorui.print("<html>\n") #html(ホームページの形式)であることを宣言する syorui.print("<head>\n") syorui.print("<title>\n") #タイトルを表示させる syorui.print("<body>\n") #本文であることを表示させる syorui.print("裁判員候補選任のご案内") #タイトルの内容 while saibanin =saiban.gets #外部からデータをとって来ることを繰り返す if /(\S+)\s+(\d+)\s+(\S+)/ =~ saibanin #もし外部データが文字→空白→数字→空白→文字なら name[n] =$1 #外部データの1つ目の要素をnameとする number[n] =$2.to_i #外部データの2つ目の要素をnumberとする saibansyo[n] =$3 #外部データの3つ目の要素をsaibansyoとする syorui.print("---------------------------------------------------------------------------------------------------------------------------------------------\n") #レイアウト線 syorui.printf("<p>住民基本台帳No%d\t%s様に法務省からのお知らせです。</p>\n",number[n],name[n]) #内容表示 syorui.print("この度、あなたは裁判員に選ばれました\n") #内容表示 syorui.printf("つきましては、事前面接を行ないますので、所定の日にちに%sまでお集まりください\n",saibansyo[n]) #内容表示 syorui.printf("<h1><p>集合場所 %s\<\p></h1>\n",saibansyo[n]) #内容表示 syorui.print("---------------------------------------------------------------------------------------------------------------------------------------------\n") #レイアウト線 end #whileの終わり end #ifの終わり n += 1 #nに1を足すことにより次の行に移る syorui.print("</body>\n") #bodyをとじる syorui.print("</html>\n") #htmlを閉じる end #書きこみモード終わり end #読み込みモード終わり d 実行結果 pan{c109058}% ./web_open_w_c_c109058.rb pan{c109058}% cat web_open_w_c_c109058.rb [~/public_html/web08] #!/usr/koeki/bin/ruby #インタプリタ宣言文 name= Array.new #外部からデーターをとって来て、それをnameとする number = Array.new #外部からデーターをとって来て、それをnumberとする saibansyo= Array.new #外部からデーターをとって来て、それをsaibansyoとする n =0 #n(配列)は0番目からはじめる open("web_data_c109058.dat","r") do |saiban| #外部データとはweb_data_c109058.datであることを定義しそれを読み込む open("c109058.html","w") do |syorui| syorui.print("<html>\n") #html(ホームページの形式)であることを宣言する syorui.print("<head>\n") syorui.print("<title>\n") #タイトルを表示させる syorui.print("<body>\n") #本文であることを表示させる syorui.print("裁判員候補選任のご案内") #タイトルの内容 while saibanin =saiban.gets #外部からデータをとって来ることを繰り返す if /(\S+)\s+(\d+)\s+(\S+)/ =~ saibanin #もし外部データが文字→空白→数字→空白→文字なら name[n] =$1 #外部データの1つ目の要素をnameとする number[n] =$2.to_i #外部データの2つ目の要素をnumberとする saibansyo[n] =$3 #外部データの3つ目の要素をsaibansyoとする syorui.print("---------------------------------------------------------------------------------------------------------------------------------------------\n") #レイアウト線 syorui.printf("<p>住民基本台帳No%d\t%s様に法務省からのお知らせです。</p>\n",number[n],name[n]) ホームページアドレスは http://roy.e.koeki-u.ac.jp/~c109058/web08/c109058.html である。 e 考察 今回は健常者にとって見やすいことを、意識してレイアウト線をいれてしまった ため、これからの課題は、読み上げソフトを使用する人が、どのように機械を通 じてこの点を克復できるように、いかにユニバーサルデザインに対応したプログ ラムを作って行くことが課題である。 さらにこのままでは個人情報がインターネットに自由に流出してしまっている状 態である。したがって、パスワードをいれてその先の情報へアクセスできるよう にできるようにしなければならない。 この2点を改善することで「公益的」名プログラムを作って行くことが課題にな る。 感想 今回も説明は手を抜かず一番力をいれた。 最後の考察にも書き示したが、公益的なプログラムが作れるようにこれからも頑 張りたい。来週以降も楽しく頑張りたい。時間が合ったら演習問題にも取り組み たい。 参考文献 地方裁判所 wikipadia http://ja.wikipedia.org/wiki/%E5%9C%B0%E6%96%B9%E8%A3%81%E5%88%A4%E6%89%80 西村まどか 2010講義ノート 第8回 HTML文章への変換予想 http://roy.e.koeki-u.ac.jp/~madoka/2010/r1/08/08_08_theme_03_htmlcheck.html 共同学習者: 横山広樹/青木 千紗/大島 藍