令和元年度 秋期 基本情報技術者試験 午前 問6
テクノロジ/基礎理論Random(n) は,0以上 n 未満の整数を一様な確率で返す関数である。整数型の変数 A,B 及び C に対して次の一連の手続を実行したとき,C の値が0になる確率はどれか。 A = Random(10) B = Random(10) C = A−B
出典:令和元年度 秋期 基本情報技術者試験 午前 問6
- ア1/100
- イ1/20
- ウ1/10
- エ1/5
正解:ウ
解説
Random(10) は0から9までの10通りの値を等確率で返すので,A と B の組合せは 10×10=100 通りあり,すべて同じ確率で起こります。C=A−B が0になるのは A と B が等しい場合,つまり (0,0),(1,1),…,(9,9) の10通りです。よって求める確率は 10/100=1/10 になります。
選択肢ごとの解説
- ア誤り。1/100 は組合せ100通りのうち特定の1通りだけが該当する場合の確率で,A=B となる10通りを数え落としています。
- イ誤り。1/20 になるような場合の数(5通り)はここでは現れません。
- ウ正しい。A=B となるのは10通りで,全100通りに対して 10/100=1/10 です。
- エ誤り。1/5 は20通りに相当し,A=B の10通りの2倍で数え過ぎです。