第12回 基礎プログラミング I レポート課題
氏名:久保田 瑛一郎
学籍番号:c109058
語学クラス:英語1
コース:社会福祉
チーム名:イナゴ食べないの?
チームホームページアドレス:http://roy/~c109001/inago/inagotabenaino.html
プロジェクト名:世界タイピング
-----------------------------------------------
はじめに
第12回の出席課題を、さくせいだけして送ることを忘れてしまいました
後で気付き送信しましたが、送られていないかも知れません
勿論こちらのミスですので仕方ないですが、せっかくなので張り付けだけしてお
きます
第12回 基礎プログラミング I 出席課題
氏名:久保田 瑛一郎
学籍番号:c109058
語学クラス:英語1
コース:社会福祉
チーム名:イナゴ食べないの?
チームホームページアドレス:http://roy/~c109001/inago/inagotabenaino.html
プロジェクト名:世界タイピング
漢字 読み
瑛一郎 えいいちろう
大変申し訳ありません。作成して、送るのを忘れていました
2点目は、先生の講義ノートでは、「イナゴ食べない?」になっていますが、正し
くは「イナゴ食べないの?」です。?の前に「の」が入ります。
---------------------------------------------------------------------------
1 100を完成とすると70ぐらいである。あとは、プログラムで用いる絵を作成す
ると言う手順がある。
2タイピングの早さによる、ボーナス点を決定するために、その基準を知る必要
がある。
そのため、チーム内でテストを実施し、その平均点でボーナスの基準を設定する。
3 タイピングプログラムを作成した。空白を空けると上手く行かなかったた
め_(アンダーバー)で対応した。世界地図の画像が多忙なためみんなで協力する。
4
ktermの文字が小さい
空白が良い との指摘があった
5
デカ文字のkterm24をプログラムによって表示させることを試みた
具体的には system(ktrem24…)のようにした。
しかし、表示されなかったので、ユーザーに手動で出してもらうことで解決する
空白については色々と試みたが上手く行かなかった。
しかし、言い訳になるかも知れないが、「普通のタイピングソフト」を作っても
面白くない、ユーザーにもどかしさを感じてもらうという点ではこれでも良い
だろう
7 プレゼンテーションスライドの作成を担当した。よって、原稿を解説する
例 S1 =スライドの1枚目
世界地図
S2
この製品のコンセプトは「なんとなく知識を広げてみよう」です。目的がなくて
も、楽しめるようなそんなプログラ厶になっています
S3
ここで皆さん考えてみて下さい!!テストで「全部国名と首都を覚えて来ること!!」
たぶん大半の方はびっくりして、あきらめてしまうのではないですか
S4
ある意味それ(あきらめる)ことが正解かもしれません。
何故かと言えば「そんなこと覚えたってすぐに使うわけではない」からです
だったら知りたいときに調べることが出来た方が良いとは思いませんか??
それが「け ん さ く」というものです。
S5
ここは全部は発表しませんが、疑問を少しだけ挙げてみてもこれだけ出てくるわ
けです
疑問を解決するために「検索して下さい」 (そして疑問を解決し「スッキリと寝
て下さい」)
S6
とはいうものの海外旅行にでも行かない限り、使わないでしょう
しかし!! 辞書だって「なんとなく見ることも」大事だといわれます。
このソフトだってそうです。今日はアジアの気分だな…とかオリンピックの開催
地は何処なんだろう…とか
こういった日常の疑問を簡単に解決できる。 この製品の特長です
世界タイピング
S2
この製品のコンセプトは「知らないと恥ずかしい英語を楽しく学ぼう!!」です
この後に意味は紹介します
S3
さて、英語といえば中学でも、高校でも、人によっては大学でも学んで来ている
わけです。
でもどうでしょう! 印象に残っているのはthis is a penだけだと…
でもせっかくですからオリンピックに出てくる都市ぐらいは、あるいはホットな
話題では「ワールドカップ開催国」の地名ぐらいはわかっていても良いのではな
いですか?
S4
さて、時代は変わりましたよ!! 2011年から小学生も英語を学ぶことになりまし
た!!
将来的に小学生に抜かされるという日も近いかも知れません
S5
(皆さんの顏を見ているとなんとなく分かりますよ)
「英語なんて面白くないし、」人によっては「TVゲームの方が面白いし」という
ふうに大体の人は考えるでしょう
S6
じゃあ楽しくしてみよう!! このプロジェクトの挑戦でもあり、この製品の大き
な特長でもあります
ニュースに世界の国々 出てきますよね?
世界地図プログラ厶て出て来た場所 綴を覚えていますか??
それらを確認できれば面白いし、ゲーム感覚でスコアが出てきたなら目標が出来
るし、面白いですよね??
これがこの製品の特長です。
以上 終わり
8プログラムを改良した
#!/usr/koeki/bin/ruby
#インタプリタ宣言文
$KCODE ="e"
#文字化け防止
s =0
a = 0
k=0
e_name =Array.new
#あとで外部データから新しくデータをとってくる
j_name =Array.new
#あとで外部データから新しくデータをとってくる
kaisuu = 0
#問題数を数えるのに使用
time = 0
#タイム計算に使用
point = 0
#スコア計算に使用
seikai = 0
#正解数計算に使用
start = 0
#スコア計算時に際し、スタート時間を記録するときに使用
finish = 0
#スコア計算時に際し、スタート時間を記録するときに使用
usrname = 0
#ユーザー名を入れてもらうときに使用
open("tiping.dat","r") do |tehon|
#外部からデータをとってくるが、そのデータをsekai.datと定義し、tehonに集める
while type = tehon.gets
#tehoに取りこむことをデータの終わりまで繰り返す
if /(\S+)\s+(\S+)/ =~ type
#もし外部のデータ配列が文字→空白→文字だったら
j_name[s] =$1
#j_nameという配列は外部データの2つ目の配列とする
e_name[s] =$2
#e_nameという配列は外部データの2つ目の配列とする
s +=1
#次の行に進むためにsにひとつ足すことにより、進む
end
#ifのおわり
end
#whileのおわり
end
#openのおわり
print("タイピングを始めます! sを押して下さい!:")
#主旨説明
sigh=gets.chomp
#そのコマンドをsighに取り入れる
if sigh =="s"
#もしsighにsと入力されたら先の処理に進む
else
#それ以外の文字が入力されたら
exit(0)
#異常終了
end
#ifのおわり
STDERR.print("ユーザー名を入れて下さい。リターンキーで確定後、2秒後にスタート:")
#ユーザ名の入力を指示
usrname = gets.chomp
#その文字の改行文字をとり、取りこむ
sleep (2)
#ktremの動き2秒間を止める(スリープさせる)
print(`banner "Start"`)
#Ktremにバナーを出す
start=Time.now.to_i
#時間を整数化することに、タイムを計算できるようにする
while a < 20
#a(問題数)が20になるまで繰り返す
srand
s = rand(439)
#s(配列番号)を乱数化(ランダムにする)することにより、ランダムに問題を出す
printf("入力単語和訳:%s\n",j_name[s])
#入力してほしい単語の和訳を表示
printf("入力単語:%s\n",e_name[s])
#入力してほしい単語を表示
STDERR.print("入力欄:")
#入力欄を表示
nyuuryoku = gets.chomp
#そこに入った文字の改行文字を取り除き、取りこむ
if nyuuryoku ==e_name[s]
#もし入力してほしい単語と、入力された単語が同じだったら
print("正解\n\n")
#結果表示
seikai+=1
#正解数を1つふやす
point+=10
#ポイントを10点ふやす
else
#それ以外の単語が入力されたら(間違っていたら)
print("不正解\n\n")
#結果表示
point -= 5
#ポイントを5点減らす
end
#ifのおわり
a += 1
#aに1を足すことによって 問題数を進める
end
#open(読みこみ)のおわり
finish = Time.now.to_i
#時間を整数化することにより、タイムを計算できるようにする
print(`banner "Stop"\n`)
#バナーを出す
time=finish-start
#先に求めた、フィニッシュの時間からスタートの時間を引くことにより、タイムを求める
if time < 65
#もしそのタイムが65(秒)以下だったら
point +=50
#pointに50を足す
elsif time < 74
#もしそのタイムが74(秒)以下だったら
point +=40
#pointに40を足す
elsif time < 80
#もしそのタイムが80(秒)以下だったら
point +=30
#pointに40を足す
elsif time < 100
#もしそのタイムが80(秒)以下だったら
point +=20
#pointに20を足す
elsif time < 123
#もしそのタイムが123(秒)以下だったら
point +=10
#pointに10を足す
end
#ifのおわり
printf("タイム:%d秒\n",time)
#結果表示
printf("正解数:%d問\n",seikai)
#結果表示
printf("得点:%d点\n",point)
#結果表示
day=Time.now
#あとでホームページに結果を表示する際のプレイした日付を表示するための記録をする
open("score.html","a") do |score|
#外部データのscore.htmlに書きこむ
score.print("\n")
#htmlであることを宣言する
score.print("
\n")
score.print("\n")
score.print("\n")
#本文であることを宣言
score.print("タイピングスコアカード
\n")
#タイトル表示
score.print("\n")
#表の始まりであることを宣言する
score.print("\n")
#表の行の始まりであることを宣言する
score.printf("ユーザー名:%s | \n",usrname)
#結果表示
score.print("
\n")
#表の1行のおわりであることを宣言する
score.print("\n")
#表の1行のはじまりであることを宣言する
score.printf("実施日/時間:%s | \n",day)
#結果表示
score.print("
\n")
#表の1行のおわりであることを宣言する
score.print("\n")
#表の1行のはじまりであることを宣言する
score.printf("タイム:%d秒 | \n",time)
#結果表示
score.print("
\n")
#表の1行のおわりであることを宣言する
score.print("\n")
#表の1行のはじまりであることを宣言する
score.printf("正解数:%d問 | \n",seikai)
#結果表示
score.print("
\n")
#表の1行のおわりであることを宣言する
score.print("\n")
#表の1行のはじまりであることを宣言する
score.printf("得点:%d点\n | ",point)
#結果表示
score.print("
\n")
#表の1行のおわりであることを宣言する
score.print("
\n")
#表のおわりであることを宣言する
score.print("
\n")
#横線(仕切り線)をひく
score.print("\n")
#本文のおわりであることを宣言
score.print("\n")
score.print("\n")
#htmlのおわりであることを宣言する
end
#open(書込み)の終わり
datは複数の人が関っているが、私は空白を_に直す作業をした日本 Japan
北海道 Hokkaido
青森 Aomori
岩手 Iwate
宮城 Miyagi
秋田 Akita
山形 Yamagata
福島 Hukushima
東京 Tokyo
埼玉 Saitama
茨城 Ibaraki
栃木 Tochigi
群馬 Gunma
千葉 Chiba
神奈川 Kanagawa
新潟 Nigata
富山 Toyama
石川 Ishikawa
福井 Hukui
山梨 Yamanashi
長野 Nagano
岐阜 Gihu
静岡 Shizuoka
愛知 Aichi
三重 Mie
滋賀 Shiga
京都 Kyoto
大坂 Osaka
兵庫 Hyogo
奈良 Nara
和歌山 Wakayama
鳥取 Ttori
島根 Shimane
岡山 Okayama
広島 Hiroshima
山口 Yamaguchi
徳島 Tokushima
香川 Kagawa
愛媛 Ehime
高知 Kochi
福岡 Hukuoka
佐賀 Saga
長崎 Nagasaki
熊本 Kumamoto
大分 Oita
宮崎 Miyazaki
鹿児島 Kagoshima
沖縄 Okinawa
インド Indo
タイ Thai
ネパール Nepal
ブルネイ Brunei
モンゴル Mongol
インドネシア Indonesia
大韓民国 Republic_of_Korea
バングラデシュ Bangladesh
ベトナム Vietnam
ラオス Laos
カンボジア Cambodia
中華人民共和国 China
東ティモール EastTimor
マレーシア Malaysia
シンガポール Singapore
朝鮮民主主義人民共和国 Democratic_Peopels_Republic_of_Koria
フィリピン Philippines
ミャンマー Myanmar
スリランカ SriLanka
ブータン Bhutan
モルディブ Maldives
アゼルバイジャン Azerbaydzhan
イスラエル Israel
カザフスタン Kazakhstan
グルジア Gruziya
トルコ Turco
アフガニスタン Afghanistan
イラク Iraq
カタール Qatar
サウジアラビア Saudi_Arabia
バーレーン Bahrain
アラブ首長国連邦 Arab
イラン Iran
キプロス Kypros
シリア Syria
パキスタン Pakistan
アルメニア Armenia
ウズベキスタン Uzbekistan
キルギス Kirgiz
タジキスタン Tadzhikistan
ヨルダン Jordan
イエメン Yemen
オマーン Oman
クウェート Kuwait
トルクメニスタン Turkmenistan
レバノン Lebanon
アイスランド Iceland
イタリア Italia
ギリシャ Grecia
スペイン Spain
デンマーク Denmark
フィンランド Finland
ポーランド Poland
モナコ Monaco
リヒテンシュタイン Liechtenstein
アイルランド Ireland
ウクライナ Ukraina
クロアチア Croatia
スロバキア Slovakia
ドイツ Deutschland
フランス AnatoleFrance
ポスニア・ヘルツェゴビナ Bosnia_and_Herzegovina
モルドバ Moldova
ルーマニア Rumania
アルバニア Albania
エストニア Estonia
サンマリノ SanMarino
スロベニア Slovenia
ノルウェー Norway
ブルガリア Bulgaria
ポルトガル Portugal
モンテネグロ Montenegro
ルクセンブルク Luxembourg
アンドラ Andorra
オーストリア Austria
スイス Suisse
セルビア Serbia
バチカン市国 Vatican
ベラルーシ Belarus
マケドニア Macedonia
ラトビア Latviya
ロシア Rossiya
イギリス Inglez
オランダ Holanda
スウェーデン Sweden
チェコ Czech
ハンガリー Hungary
ベルギー Belgie
マルタ Malta
リトアニア Lithuania
アルジェリア Algeria
エリトリア Eritrea
ガンビア Gambia
コモロ Comoros
シエラレオネ SierraLeone
赤道ギニア Republic_of_Equatorial_Guinea
チャド Chad
ナミビア Namibia
ポツワナ Botswana
モーリシャス Mauritius
リベリア Liberia
アンゴラ Angola
ガーナ Ghana
ギニア Guinea
コンゴ共和国 Republic_of_the_Congo
ジブチ Djibouti
セーシェル Seychelles
中央アフリカ Centrafrique
ニジェール Niger
マダガスカル Madagascar
モーリタニア Mauritania
ルワンダ Rwanda
ウガンダ Uganda
カーボヴェルデ CoboVerde
ギニアビサウ Guinea_Bissau
コンゴ民主共和国 Democratic_Republic_of_the_Congo
ジンバブエ Zimbabwe
セネガル Senegal
チュニジア Tunisia
ブルキナファソ Bourkina_Fasso
マラウイ Malawi
モザンビーク Mozambique
レソト Lesotho
エジプト Egypt
ガボン Gabon
ケニア Kenya
サンメト・プリンシペ Sap_Tomee_Principe
スーダン Sudan
ソマリア Somalia
トーゴ Togo
ブルンジ Burundi
マリ Mali
モロッコ Morocco
エチオピア Ethiopia
カメルーン Cameroun
コートジボワール Coted_Ivoire
ザンビア Zambia
スワジランド Swaziland
タンザニア Tanzania
ナイジェリア Nigeria
ベナン Benin
南アフリカ共和国 Republic_of_South_Africa
リビア Libia
アメリカ合衆国 United_States_of_America
カナダ Canada
メキシコ Mexico
アンティグア・ブーバーダ Antigua_and_Barbuda
コスタリカ Costa_Rica
ドミニカ共和国 Commonwealth_of_Dominica
パナマ Panama
エルサルバドル El_Salvador
ジャマイカ Jamaica
ドミニカ国 Dominica
バハマ Bahamas
キューバ Cuba
セントクリストファー・ネーヴィス Saint_Christopher_and_Nevis
トリニダード・トバゴ Trinidad_and_Tobago
バルバドス Barbados
グアテマラ Guatemale
セントビンセント・グレナディーン諸島 Saint_Vincent_and_the_Grenadines
ニカラグア Nibaragua
ベリーズ Belize
グレナダ Grenada
セントルシア Saint_Lucia
ハイチ Haiti
ホンジュラス Honduras
アルゼンチン Argentine
スリナム Surinam
ペルー Peru
ウルグアイ Uruguay
チリ Chile
ボリビア Bolivia
エクアドル Ecuador
パラグアイ Paraguay
ガイアナ Guyana
ブラジル Brazil
コロンビア Colombia
ベネズエラ Venezuela
オーストラリア Australia
トンガ Tonga
パラオ Palau
キリバス Kiribati
ナウル Nauru
フィジー Fiji
サモア Samoa
ニュージーランド New_Zealand
マーシャル諸島 Republic_of_the_Marshall_island
ソロモン諸島 Solomon_island
バヌアツ Vanuatu
ミクロネシア Micronesia
ツバル Tuvalu
パプアニューギニア Papua_New_Guinea
レイキャビック Reykiavik
ダブリン Dublin
バクー Baku
カブール Kabul
アブダビ Abu_Dhabi
アルジェ Algiers
ブエノスアイレス Buenous_Aires
ティラナ Tirana
エレバン Yerevan
ルアンダ Luanda
セントジョーンズ Saint_Johns
アンドララベリャ Andorra_la_Vella
サヌア Sanaa
エルサレム Jerusalem
ローマ Rome
バグダッド Baghdad
テヘラン Tehran
ニューデリー New_Delhi
ジャカルタ Jakarta
カンパラ Kampala
キエフ Kiev
タシュケント Tashkent
モンテビデオ Montevideo
ロンドン London
キト Quito
カイロ Cairo
タリン Tallinn
アディスアベバ Addis_Ababa
アスラマ Asmara
サンサルバドール San_Salvador
キャンベラ Canberra
ウィーン Vienna
マスカット Muscat
アムステルダム Amsterdam
アクラ Accra
プライア Prais
ジョージタウン Georgetown
アスタナ Astana
ドーハ Doha
オタワ Ottawa
リーブルビル Libreville
ヤウンデ Yaounde
ソウル Seoul
セントピーターポート Saint_Peter_Port
バンジュール Banjul
プノンペン Phnom_Penh
ピョンヤン Pyongyang
コナクリ Conakry
ビサウ Bissau
ニコシア Nicosia
ハバナ Havana
アテネ Athens
タラワ Tarwa
ビシュケク Bishkek
グアテマラシティー Guatemala_City
クウェート Kuwait
トピリシ Tbilisi
セントジョージズ Saint_Georges
ザグレブ Zagreb
ナイロビ Nairobi
ヤムスクロ Yamoussoukro
サンホセ San_Jose
プリシュティナ Pristina
モロニ Moroni
ボゴタ Bogota
ブラザビル Brazzaville
キンシャサ Kinshasa
リヤド Riyadh
アピア Apia
サントメ Sao_Tome
ルサカ Lusaka
サンマリノ市 the_City_of_San_Marino
フリータウン Freetown
ジブチ Djibouti
セントヘリア Saint_helier
キングストン kingston
ダマスカス Damascus
シンガポール Singapore
ハラレ Harare
ベルン Bem
ストックホルム Stochholm
ハルツーム Khartoum
マドリッド Madrid
パラマリボ Pramaribo
コロンボ Colombo
ブラチスラヴァ Bratislava
リュブリャナ Ljubljana
ムババーネ Mbabane
マラボ malabo
ヴィクトリア Victoria
ダカール Dakar
ベオグラード Belgrade
バセテール Basseterre
キングスタウン Kingstown
カストリーズ Castries
モガディシュ Mogadishu
ホニアラ Honiara
バンコク Bangkok
タイペイ Taipei
ドゥシャンベ Dushanbe
ダルエスサマール Dar_es_Salaam
ドドマ Dodoma
プラハ Prague
ンジャメナ N_Djamena
バンキ Bangui
北京 Beijing
チュニス Tunis
サンティアゴ Santiago
フナフティ Funafuti
コペンハーゲン Copenhagen
ベルリン Berlin
ロメ Lome
サントトミンゴ Santo_Domingo
ロゾー Roseau
ポートオブスペイン Port_of_Spain
アシガバート Ashgabat
アンカラ Ankara
ヌクアロファ Nukualofa
アブジャ Abuja
ヤレン Yaren
ウィントフック Windhoek
マナグア Managua
ニアメ Niamey
ウェリントン Wellington
カトマンズ Kathmandu
オスロ Oslo
マナーマ Manama
ポルトオープランス Port_au_Prince
イスラマバード Islamabad
パナマ Panama
ポートビラ Port_Vila
ナッソー Nassau
ポートモレスビー Port_Moresby
マルキョク Melekeok
アスンシオン Asuncion
ブリッジタウン Bridgetown
ブダペスト Budapest
ダッカ Dhaka
ディリ Dili
スバ Suva
マニラ Manila
ヘルシンキ Helsinki
ティンプー Thimphu
ブラジリア Brasilia
パリ Paris
ソフィア Sofia
ワガドゥグー Ouagadougou
バンダルスリベガワン Bandar_Seri_Begawan
ブジュンブラ Bujumbura
ワシントン Washington
ハノイ Hanoi
ポルトノボ Porto_Novo
カラカス Caracas
ミンスク Minsk
ベルモポン Belmopan
リマ Lima
ブリュッセル Brussels
ワルシャワ Warsaw
サラエボ Sarajevo
ハボローネ Gaborone
スクレ Sucre
ラパス La_Paz
リスボン Lisbon
テグシガルパ Tegucigalpa
マジュロ Majuro
スコピエ Skopje
アンタナナリボ Antananarivo
リロングウェ Lilongwe
バマコ Bamako
バレッタ Valletta
クアラルンプール Kuala_Lumpur
パリキール Palikir
ケープタウン Cape_Town
プレトリア Pretoria
ブルームフォンテーン Bloemfontein
ネピドー Naypyidaw
メキシコシティー Mexico_City
ポートルイス Port_Louis
ヌアクショット Nouakchott
マプト Maputo
モナコ Manaco
マレ Male
キシナウ Chisinau
ラバト Rabat
ウランバートル Ulaanbaatar
ポドゴリツァ Podgorica
アンマン Amman
ビエンチャン Vientiane
リガ Riga
ビリニュス Vilnius
トリポリ Tripoli
ファドゥーツ Vaduz
モンロビア Monrovia
ブカレスト Bucharest
ルクセンブルク Luxembourg
キガリ Kigali
マセル Maseru
ベイルート Beirut
モスクワ Moscow
キャラクターを作成したためホームページを変更した
My Home Page
c1090584
久保田 瑛一郎
画像のキャラクターについて
Rubyでかならずといっていいほど出てくる「エラー」をモチーフにしました
エラーのため悪役風にしました。
9 画像のキャラクターについて
Rubyでかならずといっていいほど出てくる「エラー」をモチーフにしました
エラーのため悪役風にしました。
058