第 9 回 Ruby であそぼ / 広告ページの作成 レポート課題 氏名:木村琢磨 学籍番号:C1110513 語学クラス:英語1 コース:政策マネジメント 1.筆記問題 A.a.0x32 + 0x24 = 0x?? #両方とも16進数なのでそのまま数字を足す。 0x32 + 0x24 = 0x56 b.0x15 + 0x2d = 0x?? 0x15 + 0x2d = 0x(1+2)(5+d) #一の位と十の位を分けて計算する。 = 0x(3)(5+13) #「d」は10進数で表すと「13」。 = 0x(3)(18) = 0x(3+1)(2) #16進数なので 18 - 16 = 2 で、 2余って 1繰り上がる。 = 0x42 c.0xed - 0x12 = 0x?? #b.と同じ要領で引き算。 0xed - 0x12 = 0x(e-1)(d-2) = 0x(14-1)(13-2) #「e」は「14」、「d」は「13」。 = 0x(13)(11) #「13」と「11」を16進数に直す。 「11」は「b」。 = 0xdb B.まず、商を x とすると、 (整数) = 7 * x + 2 という計算式になる。 数が1以上31以下までなので、 1 <= 7 * x + 2 <= 31 -1 <= 7 * x <= 29 となり、これにあてはまるのは、 x = { 0, 1, 2, 3, 4 } となる。 この数を整数の式に代入すると、 x = 0 7 * 0 + 2 = 2 x = 1 7 * 1 + 2 = 9 x = 2 7 * 2 + 2 = 16 x = 3 7 * 3 + 2 = 23 x = 4 7 * 4 + 2 = 30 したがって、答えは、{ 2, 9, 16, 23, 30 } となる。 2.プログラム問題 A.使用したデータ 名前 読み 背番号 打率 投げ 打ち 阿部愼之助 Abe_Shinnosuke 10 .311 右 左 坂本勇人 Sakamoto_Hayato 6 .306 右 右 長野久義 Chono_Hisayoshi 7 .279 右 右 村田修一 Murata_Shuichi 25 .277 右 右 高橋由伸 Takahashi_Yoshinobu 24 .244 右 左 ボウカー Bowker 36 .203 左 左 谷佳知 Tani_yoshitomo 8 .231 右 右 小笠原道大 Ogasawara_Michihiro 2 .194 右 左 亀井義行 Kamei_Yoshiyuki 9 .188 右 左 藤村大介 Fujimura_Daisuke 0 .242 右 左 寺内崇幸 Terauchi_Takayuki 00 .237 右 右 加治前竜一 Kajimae_Ryuichi 50 .333 右 右 エドガー Edgar 42 .346 右 右 杉内俊哉 Sugiuchi_Toshiya 18 .100 左 左 内海哲也 Utsumi_Tetsuya 26 .053 左 左 澤村拓一 Sawamura_Hirokazu 15 .053 右 右 松本哲也 Matsumoto_Tetsuya 31 .111 左 左 ホールトン Houlton 54 .143 右 右 作成したプログラム #!/usr/koeki/bin/ruby #coding: euc-jp print("読売ジャイアンツのデータを取り扱います。\n") cand = Array.new name = Array.new yomi = Array.new number = Array.new nage = Array.new uchi = Array.new i = 0 open("web_data_c1110513.dat", "r") do |seek| while data_c1110513 = seek.gets if /(\S+)\s+(\S+)\s+(\d+)\s+(.\d+)\s+(\S+)\s+(\S+)/ =~ data_c1110513 name[i] = $1 yomi[i] = $2 number[i] = $3 cand[i] = $4.to_f nage[i] = $5 uchi[i] = $6 i += 1 end end end j = 0 while j < cand.length printf("候補 %d: %s\n", j+1, name[j]) j += 1 end STDERR.print("調べたい選手の番号を入力して下さい:") m = gets.to_i print("選手情報\n") printf("背番号: %d番 名前: %s (%s)\n", number[m-1], name[m-1], yomi[m-1]) printf("%s投げ %s打ち\n", nage[m-1], uchi[m-1]) printf("打率: %s\n", cand[m-1]) open("kyojin.html", "w") do |html| html.printf("\n") html.printf("
\n") html.printf("%s投げ %s打ち
\n", nage[m-1], uchi[m-1]) html.printf("打率 %s
\n", cand[m-1]) html.printf("\n") html.printf("\n") end 実行結果 pan{c111051}% ./kyojin.rb [~/public_html/adv] 読売ジャイアンツのデータを取り扱います。 候補 1: 阿部愼之助 候補 2: 坂本勇人 候補 3: 長野久義 候補 4: 村田修一 候補 5: 高橋由伸 候補 6: ボウカー 候補 7: 谷佳知 候補 8: 小笠原道大 候補 9: 亀井義行 候補 10: 藤村大介 候補 11: 寺内崇幸 候補 12: 加治前竜一 候補 13: エドガー 候補 14: 杉内俊哉 候補 15: 内海哲也 候補 16: 澤村拓一 候補 17: 松本哲也 候補 18: ホールトン 調べたい選手の番号を入力して下さい:2 選手情報 背番号: 6番 名前: 坂本勇人 (Sakamoto_Hayato) 右投げ 右打ち 打率: 0.306 考察 「選手情報」以下の文を使用したデータと比較したとき、間違いがないことが分かる。 したがって、このプログラムは正しく起動している。 B.ホームページのURL http://roy/~c111051/ 選手情報ページのURL http://roy/~c111051/adv/kyojin.html <企画書> プログラム名: 読売ジャイアンツの選手名鑑 キャッチフレーズ: これで君も巨人ファンの仲間入り!! *内容 ジャイアンツに興味のない人でもジャイアンツのことがわかるように、 また、ジャイアンツファンの人に楽しんで頂けるように作成しました。 読売ジャイアンツの選手を調べることが出来るプログラムです。 選手の名前、読み、背番号、投打、打率を表示されます。 *課題 2012年現在のプロフィールまでしか表示されず、その後のプロフィールが更新さ れないので、応用ができない。何年も使えるプログラムを作れればいいなと思う。 <取扱説明書> *読売ジャイアンツの選手名簿プログラム このプログラムは、知りたい選手の番号を選択することで、 その選手の名前、背番号、投打、打率を知ることが出来ます。 *ダウンロードファイル 検索するためのダウンロードファイルは以下の通りです。 00readme (取り扱い説明書) kyojin.rb (プログラム本体) web_data_c1110513.dat (データ) 以上の3つを同じディレクトリに保存してください。 *使用方法 ktermで保存したディレクトリに移動し、 chmod +x kyojin.rb と打ち、 ./kyojin.rbで実行できる。 あとは、調べたい選手の番号を選択することで、その選手の情報が得られます。 ホームページプログラムのデータ(web_data_c1110513.dat)
このプログラムは東北公益文科大学 木村琢磨 が著作権を所有しています。
このプログラムを取り扱って生じた問題は一切責任を負いませんのでご了承ください。
このプログラムに対する要件がありましたら下記まで連絡してください。
c111051@g.koeki-u.ac.jp
C.広告ホームページのURL http://roy/~c111051/adv/ エントリー部門 実用部門 感想 今回は、プログラム自体はあまり複雑にせず、シンプルに作って、実行しやすく、 かつ、わかりやすく表示できるように心掛けた。このプログラムに、さらに、 kterm で実行した結果をWebページに表示する際に、選手の画像も一緒に表示できるよ うにすれば、ジャイアンツのことを知らない人にもわかりやすくなると思ったが、 今の自分には無理だった...。 今までのレポート作成を通して、段々プログラムを理解し、実力を実感出来てい るので、この調子でこれからもレポート作成に勤しみたい。 参考文献 西村先生のページ 「コンペティションについて」 2010年度 http://roy/~madoka/2010/r1/09/rpt/crt.html 「広告用ホームページ」 http://roy/~madoka/2012/r1/09/r1_09_13_theme_09_software.html 「ソフトウェアの公開時の条項」 http://roy/~madoka/2012/r1/09/r1_09_14_theme_10_termsofcondition.html 神田先生のページ カスケーディングスタイルシート(CSS) http://roy/~naoya/ruby/css.html 協力学生 高橋岬