第 5 回 何度も呼び出そう レポート課題 氏名:吉田 亘 学籍番号:C1102005 語学クラス:英語2 コース(系):政策マネジメント 1A Y = 0x59 o = 0x6F s = 0x73 h = 0x68 i = 0x69 d = 0x64 a = 0x61 W = 0x57 a = 0x61 t = 0x74 a = 0x61 r = 0x72 u = 0x75 0x59+0x6f=5+6 9+f^16 c8 0x73+0x68=7+6 3+8^16 e1 0x69+0x64=6+6 9+4^16 c3 0x61+0x57=6+5 1+7^16 b8 0x61+0x74=6+7 1+4^16 d5 0x61+0x72=6+7 1+2^16 d3 0x75+0xc8=7+c^16 5+8^16 13d 0xe1+0xc3=e+c^16 1+3^16 1a4 0xb8+0xd5=b+d^16 8+5^16 18d 0xd3+0x13d=1 d+3^16 3+d^16 210 0x1a4+0x18b= 1+1 a+8^16 4+b^16 32d 0x210+0x32d=2+3 1+2 0+d 53d 結果 53d 10進数に変換し全て足す。 0x59 = 16*5+9 = 0d89 0x6f = 16*6+15= 0d111 0x73 = 16*7+3 = 0d115 0x68 = 16*6+8 = 0d104 0x69 = 16*6+9 = 0d105 0x64 = 16*6+4 = 0d100 0x61 = 16*6+1 = 0d97 0x57 = 16*5+7 = 0d87 0x61 = 16*6+1 = 0b97 0x74 = 16*7+4 = 0b116 0x61 = 16*6+1 = 0b97 0x72 = 16*7+2 = 0b114 0x75 = 16*7+5 = 0b117 89+111+115+104+105+100+97+87+97+116+97+114+117=1349となった。 16進数にするため16で割る 1349/16=84,,,5 85/16=5,,,5 下から読み取ると5,5,5となる。 B 歯みがき、洗顔の様子を表した。 def hamigaki(hamigakiko,wash,water) hamigakiko を 取りだす washする hamiogakikoでwashしwaterで流す end def senngann(taoru,wash,water) taoruを持って来る washする waterで洗い流す end hamigaki("歯磨き粉,1回,200cc") #歯を研くため呼び出す senngann("1枚,10回,1分") #顔を洗うため呼び出す print("さっぱり\n") #メッセージ 2A #!/usr/koeki/bin/ruby def factorial(s) if s == 1 1 else s * factorial(s-1) end end def kumiawase(f,w) factorial(f)/factorial(f-w) end STDERR.print("飲み会を行うことになりました\n") STDERR.print("AからZさんの中から誘うことになった、何人誘いますか?\n") sannkasya = gets.to_i nomi = 26 printf("%d 人誘ったときの組み合わせは %d 通りです。\n",sannkasya,kumiawase(nomi,sannkasya)) ---------------------------------------------------------------------- def factorial(s)と メソットの設定をしている if s == 1 もし s が 1 でなかったら else で s * factorial(s-1) メソットを 呼び、掛ける。 def kumiawase(f,w)とメソットの設定をしている。 factorial(s) を呼び出し factorial(f)/factorial(f-w) の計算をする printで文相を表示し、 sannkasya = gets.to_i 入力された文字列を整数に変え変数 sannkasya の中 に代入する nomi = 26 参加者は26 人なので 26 を代入 printfで計算されたものを表示する。 -------------------------------------------------------------------------- pan{c110200}% ./def_combination.rb [~/Ruby] 飲み会を行うことになりました AからZさんの中から誘うことになった、何人誘いますか? 3 3 人誘ったときの組み合わせは 15600 通りです。 -------------------------------------------------------------------------- 3 鹿威し 4 参考文献 http://roy/~madoka/2011/r2/05/ 基礎プログラミング II 第 5 回 「何度も呼び出そう」 協同製作者 鏡 登志晃 須藤 充司