第5回 基礎プログラミング I レポート課題 氏名:XXXXXXXXX 学籍番号:c109XXX 語学クラス:英語1 コース(系):政策 \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ 1、筆記問題 while文の暗号を解読したところ、電脳城に幽閉された瑠美姫の理想の番 人はオコリン坊であった。 解読の仕方は、%cには16進数表記で扱うのASCIIコードが入る。最初の %cに入る文字は0x6fのASCIIコードなので0x6fの6fをASCIIコードにあて はめる。6は縦に列んでる数字でfは横に列ぶ英数字であり、そのふたつ が交わる文字がコードなので"o"となる。その要領で他のもやると、 printf("%c%c%c%c%c%c%c%cに会いたいぞよ\n", 0x6f,0x6b,0x6f,0x72,0x69,0x6e,0x62,0x6f) にはo,k,o,r,i,n,b,oすなわち「おこりんぼ」である。 しかし、これだけでは「おこりんぼ」の意味がわかんないので次も解読 する。 printf("http://www9.%c%c%c.or.jp/%c%c%c%c%c/%c%c%c%c%c/%c%c%c%c%c/%c%c%c%c %c/%c%c%c.html\n", 0x6e, 0x68, 0x6b, 0x61, 0x6e, 0x69, 0x6d, 0x65, 0x6f, 0x6a, 0x61, 0x72, 0x75, 0x63, 0x68, 0x61, 0x72, 0x61, 0x70, 0x6f, 0x70, 0x75, 0x70, 0x6f, 0x6b, 0x6f) も先程と同じ要領でやると htpp://www9.nhk.or.jp/anime/ojaru/chara/popup/oko.html となり、これに接続したら、おじゃる丸のキャラクターのオコリン坊が出 てきた。 よって、"おこりんぼう"の招待がわかり番人(番犬)の理想がオコリン坊 だとわかった。 もしプログラムが暴走してしまったらCtrl+cで止める。 暴走する理由はプログラムに限界についての記述がないか終わる条件が ないかである。 直し方は止める限界を書きこむ場合はwhile文に限界についての記述を する。 ユーザー入力により止まる場合は while true if 終わる条件 break end end このように作成する。 B,進数変換 商が1になるまで割り算する a,0d42 = 2)42 2)21 0 2)10 1 2)5 0 2)2 1 1 0 よって0b101010となる 答え、0d42 = 0b101010 b,0d51 = 2)51 2)25 1 2)12 1 2)6 0 2)3 0 1 1 よって0b110011となる 答え、0d51 = 0b110011 2、プログラム問題 A, #!/usr/koeki/bin/ruby i = 0 #要素数が0からスタート animal = ["猫","犬","烏","智也"] #何の動物か place = ["屋根","裏道","浜辺","空"] #通る場所 food = ["魚", "財布", "肉" ,"夢"] #くわえている物 city = ["日本","アメリカ","イギリス","オーストラリア"] #旅先 funds = [5000,18900,23100,42900] total = 0 while i < animal.length #animalの要素数を繰り返す printf("動物 %d: \n", i+1 ) printf("%sは%sを通り %sくわえて %sまで旅します\n", animal[i], place[i], food[i] ,city[i]) #要素数がそれぞれ入る実行文 printf("資金は%d円です\n", funds[i]) #旅の資金 total += funds[i].to_i i += 1 end printf("資金の合計は%d円です\n",total) #資金の合計 //実行結果// pan{c109120}% ./form_a.rb [~/Ruby] 動物 1: 猫は屋根を通り 魚くわえて 日本まで旅します 資金は5000円です 動物 2: 犬は裏道を通り 財布くわえて アメリカまで旅します 資金は18900円です 動物 3: 烏は浜辺を通り 肉くわえて イギリスまで旅します 資金は23100円です 動物 4: 智也は空を通り 夢くわえて オーストラリアまで旅します 資金は42900円です 資金の合計は89900円です //考察// このプログラムが正常か確かめ算してみた。 pan{c109120}% bc -l [~/Ruby] 5000+18900+23100+42900 89900 quit 実行結果と確かめ算があっていて、プログラムの配列が左から表示されていたの でこのプラグラムは正常である。 3、感想 今回から、レベルが数段と上がり授業、レポートがとても難しく感じました。 ですからこれからも頑張り、皆に置いてかれないようにプログラミングを取り 組みます。 日常生活では電車やバスの時刻表があります。 4、参考文献 「ぐるぐるまわる」 http://roy/~madoka/2010/r1/04/04_04_review_03_repetation.html 「行先検索ソフト」 http://roy/~madoka/2010/r1/05/05_10_theme_08_ary_train.html 「ASCII コード表」 http://roy/~madoka/2010/r1/05/05_01_theme_01_asciicode.html 西村まどか著 協力者(先輩) ・工藤 智也 ・大沼 拓海 協同者 ・横山 広樹 \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\