第5回 基礎プログラミング II レポート課題 氏名:遠藤達也 学籍番号:c1090271 語学クラス:中国 コース(系):政策 筆記問題 A 自分の名前は遠藤達也です。これをASCIIコードで表示すると、 E=0*45 n=0*6E d=0*64 o=0*6F T=0*54 a=0*61 t=0*74 s=0*73 u=0*75 y=0*79 a=0*61 になります。 これを10進数に戻す。 0*45は、4*16^1+5*16^0=64+5=0d69 0*6Eは、6*16^1+E*16^0=96+14*16^0=96+14=0d110 0*64は、6*16^1+4*16^0=96+4=0d100 0*6Fは、6Eに1を足したもの=0d111 0*54は、5*16^1+4*16^0=80+4=0d84 0*61は、6*16^1+1*16^0=96+1=0d97 0*74は、7*16^1+4*16^0=112+4=0d116 0*73は、7*16^1+3*16^0=112+3=0d115 0*75は、7*16^1+5*16^0=112+5=0d117 0*79は、7*16^1+9*16^0=112+9=0d121 0*61は、6*16^1+1*16^0=96+1=0d97 となる。 これを全て足すと =0d1131 これを16進数に戻すと、 1131/16=70あまり11(11=b) くりあげて余り1 70+(1)/16=4あまり6 4/16=0あまり4 よって0d1131=0*46b 0d1131は16で割ると余り11 16進数だと16は10なので、これで46bを割ると、 46b/10=471/10=47あまり1 このとおり2つの式は余りの数が一致している。 <考察> ASCIIコード表を見つつ、過去の講評も見ながらやっとできました。 ただ、58、59行目の計算はあとあと自分に都合のいいように変換してしまったの で正しいかが分かりません。 <参考文献> ASCIIコード表 http://www9.plala.or.jp/sgwr-t/c_sub/ascii.html 2009講評その8 http://roy/~madoka/2009/r2/05/rpt/c108019.txt B 日常で繰り返すものとして、買い物をする動作をプログラム風に書くと以下のよ うになる。 def kaimono(market,rezi,saihu) marketに行く reziに行く saihuを取り出す kaikei = rezi で saihu を取り出す end #繰り返すものはkaikei kaimono(ヤマザワ、財布を取り出す) print("買い物をしたよ!\n") <参考文献> 2009講評その9 http://roy/~madoka/2009/r2/05/rpt/c108057.txt プログラム問題 A 設定。今週行われたプロ野球のドラフト会議にちなんで、他球団が50人いるドラ フト候補の中からドラフト6位までを選んだ場合、その時の組み合わせの種類は何通りある かをを表示する。 プログラム本体 #!/usr/koeki/bin/ruby def sentaku(m) if m == 1 return 1 else m * sentaku(m-1) end end saidai = 50 saitei = 6 kekka = saidai - saitei printf("%d 人から %d 人とる組み合わせは・・・\n", saidai, saitei) printf("%d 通りです!!\n", sentaku(saidai)/(sentaku(saitei)*sentaku(kekka))) 実行結果 pan{c109027}% ./def_combination.rb [~/Ruby] 50 人から 6 人とる組み合わせは・・・ 15890700 通りです!! <考察> kekka = saidai - saitei の部分なのですが、こんなにも簡単なプログラムで高校の頃に苦労した数学の組 み合わせ問題ができるということに感動しました。 選択する回数を増やしたらもっと複雑なものもできると思いました。 <感想> かなり簡単な作品になってしまいましたが、これぐらいのプログラムなら1人で もなんなくできるようになったことはうれしいです。 たまごっち 卵が現れるー卵が孵化するーエサを与えるー成長するー死ぬー卵が現れる。 <参考文献> トランプの並べ替え http://roy/~madoka/2010/r2/05/05_09_theme_07_quicksort.html 並べかえプログラム http://roy/~madoka/2010/r2/05/05_10_theme_08_quicksortprog.html <共同学習者> なし