第 5 回 何度も呼び出そう レポート課題 氏名:鏡 登志晃 学籍番号:c1100495 語学クラス:英語6 コース(系):政策マネイジメント プログラムの実行結果と説明をつけたしました 2 A #!/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") soubihinn = gets.to_i buki = 26 printf("%d 個選んだときの組み合わせは %d 通りです。 \n",soubihinn,kumiawase(buki,soubihinn)) -------------------------------------------- 冒険の装備品の組み合わせを求めます。 AからZの中から武器を決めることになった。何個武器を選びますか? 2 2 個選んだときの組み合わせは 650 通りです。 -------------------------------------------- def_factiorial(s)によってメソットの設定を行いifで1を設定し またelseでそれ以外のものを行った STDERR.printで 標準出力で出力させ表示させたい文章をダブルコーテーションで囲み出力する そしてsoubihinn = gets.to_iで入力された文字列を整数に変え変数soubihinnの 中に代入する ------------------------------------ 1 A Kagami Toshiaki を ASCIIコードで表すと K = 0x4b a = 0x61 g = 0x47 a = 0x61 m = 0x4d i = 0x49 T = 0x54 o = 0x6f s = 0x53 h = 0x68 i = 0x69 a = 0x61 k = 0x6b i = 0x69 足して16になったらつぎの位に移る 0x4b + 0x61 =b+1=11+1=12=c,4+6=10=a,ac 0xac + 0x47 =12+7=19=16+3 10+4=14=e,f3 0xf3 + 0x61 =3+1=4,15+6=21=16+5,154 0x154 + 0x4d =4+d=4+13=17=16+1,5+4=9,1a1 0x1a1 + 0x49 =1+9=10=a,a+4=10+4=14=e,1ea 0x1ea + 0x54 =a+4=14=e,e+5=19=16+3,23e 0x23e + 0x6f =e+f=29=16+13,13=d,3+6=9+1=10=a,2ad 0x2ad + 0x53 =d+3=16,a+5=15,300 0x300 + 0x68 =8,6,3=368 0x368 + 0x69 =8+9=17=16+1 ,6+6=12+1=13=d=3d1 0x3d1 + 0x61 =1+1=2, d+6=19=16+3=432 0x432 + 0x6b =b+2=13,6+3=9=49d 0x49d + 0x69 =d+9=22=16+7,9+6=15,0x407 B. 毎晩の髪を洗う行動をプログラム風にしてみた。 def kamiarau(syannpu ,arau ,rinnsu) 髪に syannpu をつける 髪を arau 髪に rinnsu をつける 髪を arau karada=karadawoarau end kamiwoarau(60秒 ,40秒 ,60秒,40秒) print("おやすみ\n") 3 シンバルを叩く猿のおもちゃが機械的にシンバルを叩き続けます。 4http://roy/~madoka/2011/r2/05/rpt/rpt.html 基礎プログラミング II 第 5 回 「何度も呼び出そう」 協同者 吉田 亘 須藤充司