質問のサイコロの確率の問題をPythonで解いてみました。(^_^;
Pythonでプログラムを作ってカウントさせてみたら次のようになりました。(^_^;
(1)120/1296=5/54
「3個揃う」というのが、ちょっとあいまいで、「4個揃う」場合は含めないことにして、ぴったり「3個揃う」場合をカウントしました。
ちなみに、「4個揃う」のも含める場合は、(120+6)/1296=7/72
(2)210/1296 = 35/216
ちなみに、数学的に解く場合は、独立試行の確率(反復試行の確率)を使うか、同じものを含む順列で考えればいいと思います。
やはり、問題の(1)番と(2)番のつながりを考えれば、ぴったり「3個揃う」場合と考えた方がいいような気がします。(2)番はぴったり「3個揃う」場合に「2個ずつ揃う」場合を足せばいいようです。
※参考URL
■独立な試行の確率,反復試行の確率
●DiceProb1.py
# coding: UTF-8 # DiceProb1.py from fractions import Fraction def myJoin(d): t=sorted(d) result=s="" for i in range(len(t)): if s!=str(t[i]): s=str(t[i]) result+="|" result+=s return(result[1:]) total=cnt1=cnt2=0 for a in range(1,6+1): for b in range(1,6+1): for c in range(1,6+1): for d in range(1,6+1): total+=1 t=[a,b,c,d] s=myJoin(t) if len(s)==5: cnt2+=1 # print("%3d"%cnt2,t) if s.find("|")==1 or s.find("|")==3: cnt1+=1 # print("%3d"%cnt1,t) print("(1) %d/%d =" %(cnt1,total),Fraction(cnt1, total)) print("(2) %d/%d =" %(cnt2,total),Fraction(cnt2, total))
●実行結果
(1) 120/1296 = 5/54 (2) 210/1296 = 35/216
- 作者: 辻真吾
- 出版社/メーカー: 技術評論社
- 発売日: 2010/04/24
- メディア: 大型本
- 購入: 19人 クリック: 199回
- この商品を含むブログ (59件) を見る
- 作者: 柴田淳
- 出版社/メーカー: SBクリエイティブ
- 発売日: 2012/08/25
- メディア: 単行本
- 購入: 1人 クリック: 13回
- この商品を含むブログ (41件) を見る
パーフェクトPython (PERFECT SERIES 5)
- 作者: Pythonサポーターズ,露木誠,ルイス・イアン,石本敦夫,小田切篤,保坂翔馬,大谷弘喜
- 出版社/メーカー: 技術評論社
- 発売日: 2013/03/05
- メディア: 大型本
- 購入: 1人 クリック: 65回
- この商品を含むブログ (30件) を見る