第11回 基礎プログラミング I レポート課題 氏名:及川 雄寛 学籍番号:c1090302 語学クラス:英語3 コース(系):政策マネジメント チーム名:「イナゴ、食べないの?」 チームホームページアドレス:http://roy/~c109001/inago/inagotabenaino.html プロジェクト名:世界地図・世界タイピング 1. A.下記のURLでページの更新とロゴを掲載している。 http://roy/~c109030/index.html 2. A. 我がチームのプロジェクト名は、「世界地図」と「世界タイピング」である。 この2つのプロジェクトが決まった経緯は「世界地図」の場合、多くの人が意外 と世界の国の首都と日本の県庁所在地名を知らないのではないかと考え、この プログラムを使っていろんな人に知ってもらおうと思い、作成にするに至った。 「世界タイピング」の場合、「世界地図」から関連したものを作成すること は出来ないかと考たのと同時に、海外の国名の英語表記を知らないのではな いかと考え、作成するに至った。 B. 私が所属するプロジェクト名は、「世界地図」である。プロジェクトホームペー ジアドレスは、下記のURLである。 http://roy/~c109001/inago/sekaichizu.html プロジェクト内での担当は、「プログラム作成」である。 C.作成したプログラムの解説をする。 プログラム名:Ruby/capitalcity.rb #!/usr/koeki/bin/ruby n = Array.new #番号 t = Array.new #地域名 c = Array.new #国名 s = Array.new #首都(県庁所在地)名 i =0 #配列番号 print("検索する前に、平仮名入力にしてください。[Ctrl-o]または、[Shift+ スペースキー]\n") print("番号を入力して下さい。\n") print("日本なら00、北海道地方ならa、東北地方ならb、関東地方ならc、中部地方ならd、近畿地方ならe、中国地方ならf、四国地方ならg、九州地方ならh、アジア東部なら01、アジア西部なら02、ヨーロッパなら03、アフリカなら04、北アメリカなら05、中央アメリカなら06、南アメリカなら07、オセアニアなら08を入力して下さい。\n") STDERR.print("番号:") kensaku = STDIN.gets.chomp #与えられた番号を1行ずつ読み込む shuto = Regexp.new(kensaku, true, "e") open("sekaichizu.dat","r")do |world| #sekaichizu.datを読み込んで、 worldに変換する。 while capitalcity = world.gets if shuto =~ capitalcity if /(\S+)\s+(\S+)\s+(\S+)\s+(\S+)\s+/ =~ capitalcity #print capitalcity n[i] = $1 t[i] = $2 c[i] = $3 s[i] = $4 printf("%sを検索しました。\n",c[i]) end end i += 1 #次のものを読み込ませるために +=1を行う。 end end print("次に首都を検索します。検索された中から1つ選んで入力して下さい。\n") STDERR.print("国名:") kensaku = STDIN.gets.chomp shuto = Regexp.new(kensaku,true, "e") open("sekaichizu.dat","r")do |world| while capitalcity = world.gets if shuto =~ capitalcity if /(\S+)\s+(\S+)\s+(\S+)\s+(\S+)\s+/ =~ capitalcity # print capitalcity n[i] = $1 t[i] = $2 c[i] = $3 s[i] = $4 printf("%sの首都は%sです。\n",c[i],s[i]) end end i += 1 end end D.あまり変わったのにしても、どうなのかなと判断し、あえてシンプルなもので 作成することにした。最初は新聞印刷の文字で行ったのだが、変な漢字がした のでクロームに変更した。