• 締切済み

サイコロ

サイコロを5000回振って『1』が714回出る確率を求めたいのですが、 計算式は5000C714*1/6^714*5/6^4286= で良いでしょうか? そしてこの値を求めるにはどうしたらよいでしょうか? 電卓やエクセルを使っても桁が大きすぎて値が出ません。

みんなの回答

  • Mr_Holland
  • ベストアンサー率56% (890/1576)
回答No.15

 #4/#7/#11/#12です。  丁寧なお礼をありがとうございます。 >#7で全部OKでした。 >#12はどうでしょう?値はでますか?  もちろん、計算できます。(Ecxel 2003)  質問者さんのエクセルでどうして計算できないのか、私には分かりません。何かの設定の違いなのかもしれません。  (改めて、エクセルでの計算について質問を起こした方が良いかもしれません。) >…804回とは? >1/6のサイコロを5000回振った時、『1』の出る確率が、結果1/7以下になる確率は >5000÷714=7.0028011 >5000÷715=6.9930069 >ここが境界線ではないでしょか?  もし5000回振って、『1』が何回(714回でも1000回でも)出てもその確率が同じならば単純に回数で割ればよいのですが、実際には回数によって確率は異なるので、単純な割り算は通用しません。  例えば、話を簡単にするためサイコロを5回振って『1』がn回でる確率を考えますと、次のようになります。  『1』が0回: 5_C_0 5^5/6^5 =0.40188  『1』が1回: 5_C_1 5^4/6^5 =0.40188  『1』が2回: 5_C_2 5^3/6^5 =0.16075  『1』が3回: 5_C_3 5^2/6^5 =0.03215  『1』が4回: 5_C_4 5^1/6^5 =0.00322  『1』が5回: 5_C_5 5^0/6^5 =0.00013  ご覧の通り、『1』が出る回数によって確率は異なるので、単純な割り算ができません。  そのため、累積二項分布(例:0~714回までの確率の和)の計算結果から1/7以下になる回数を求める必要があります。 # なお、回答するに当たって他の回答者さんの内容が参考になっています。   他の回答者さんへお礼があまりないようですので、できましたらお礼を書いて下さいね。少し恐縮しています。

moko_moco
質問者

お礼

何度も何度もすみません。 そしてありがとうございます。 804… わからない。 また眠れなくなりそうです。。 数学ではなく国語(文章の書き方)の問題なのかもしれません。 明日また別で質問を起こします。 数学記号のCも知らなかったような奴なので、 簡単そうに算数みたいに説明してくれたMr_Hollandさんの回答だけ目についてしまい、、 チョット難しい記号が入っているともう何もわからなくなってしまうので、答えてくれた人々気分悪くしたのならごめんなさい。

  • kabaokaba
  • ベストアンサー率51% (724/1416)
回答No.14

No.10です. やっぱりLisp系だと似た感じですね>No.13さん さて・・・すっかり忘れてましたが 一部で有名な(おとといの朝日の青Beにもでてた) カシオの高精度計算サイトの 二項分布のページですぐ計算できます. 0回から714回までの累積確率は 2.14462566850278717 x 10^{-6} 714回の確率は 3.720202855235832 x 10^{-7} 1000回の確率は 7.6409765291696806 x 10^{-11} 3000回の確率は 4.69158369913862575 x 10^{-1034} それぞれの計算時間は体感で一秒程度です. 上の計算,入力時間・表示含めて一分かかってないです. #すごいよ,カシオ・・API公開してほしいな

noname#76525
noname#76525
回答No.13

#8です。 今回の回答、文字数オーバーだと思ってたのだけど、#10さんのをみると、ちゃんと表示できるみたいですね。 ちなみに自分は以下でやりました。 (defun pow (n m &optional (result 1)) (if (<= m 0) result (pow n (1- m) (* n result)))) (defun fact (n) (if (= n 0) 1 (* n (fact (1- n))))) (defun comb (mm nn) (/ (fact mm) (fact nn) (fact (- mm nn)))) (* (comb 5000 714) (pow 1/6 714) (pow 5/6 4286))

  • Mr_Holland
  • ベストアンサー率56% (890/1576)
回答No.12

 #4/#7/#11です。  簡単な方法を忘れていました。  エクセルには二項分布の関数がありますので、1発で計算できます。   5000C714*1/6^714*5/6^4286⇒ =BINOMDIST(714,5000,1/6,FALSE)   0~714回までの累積確率⇒ =BINOMDIST(714,5000,1/6,TRUE) >1000回の時、3000回の時の確率も計算したいです。 >どなたか良い方法ありませんか?  この方法を使えば、あっという間です。

moko_moco
質問者

お礼

みなさん本当にありがとうございます。 この関数を使うのが一番簡単そうだったので試してみたのですが やはり桁が大きくなりすぎてエクセルだと計算できないのですが。 3000回の時を計算してみると191回までしか値が求められません。 なにかやり方を間違っているでしょうか? これから他の皆さんの方法も試させていただきます。

  • kabaokaba
  • ベストアンサー率51% (724/1416)
回答No.11

>; (iota 0 715) まちがった(^^; ; (iota 715) に修正

  • kabaokaba
  • ベストアンサー率51% (724/1416)
回答No.10

No.5です. >差し支えなければ教えていただきたいのですが。 やっつけプログラムで計算させたんですが 時間かかりすぎでした(笑) ということで,Schemeの実装の一個のGaucheで計算させました. 計算時間そのものは数秒ですが・・答えは 当然とんでもなくなります. 一応リストを晒しておきます. (use srfi-1) (define (fact n) (if (= n 0) 1 (* n (fact (- n 1))))) (define (binary n r p) (* (expt p r) (expt (- 1 p) (- n r)) (/ (fact n) (fact r) (fact (- n r))) ) ) ;; 5000C714 (1/6)^714 (5/6)^4286 (print (exact->inexact (binary 5000 714 1/6))) ;; 近似値 (print (binary 5000 714 1/6)) ;;正確な値はこっち ;;714回以下の和はこれ.時間がかかる ;(print (fold + 0 ; (map (lambda (x) (exact->inexact (binary 5000 x 1/6))) ; (iota 0 715) ;))) 現実問題としては714回以下の確率は 正規分布での近似とかを考慮すべきかと >5000回振って『1』が714回出る確率 これは当たり前ですが,No.8さんと同じで 3.720202855235832 x 10^{-7} です.誤差なしの値は 分子が 68234230261201878920019266136402226898753263389240959969095317245109082272440088 82237893020974156457460639995062001629798882640137510739955856048284769626513762 30322679138107506968299724095316092281625121757334718935602701704689021008791104 16262561864112550852420456503496200474869455470484427708909217843477263632329014 87840045098572386319795494608755423336984279024616178557967671407167474168798286 22103535519546772790062376884868673494393222282218991287564896330071239787090308 85903075813756707588379163664555674283427075278466620680938055754887544653545697 10368862930659760797105984384879050835809586330315467838406196567868815278390995 20168722022828169450765753446110061912163099652231975328679750765535677252842295 84762985902971394287604970296783258464455185005219242964649853583470561527768493 07172559215677175602315908442638699876562730307529453667365949714088063758846755 21938209158696904235033061614359883403725731881605066348080164690404502911472501 99465775186277128975839612974111958467697790258475158337616544593479233769124412 54313439033034567484371011770767778037720329208423662987820011307506209302894317 16406966157797081527456727839758694630472789228151906791162463578595402063760160 50573056256170749507413831725639796496767479663673263060820632425739857486132483 66913972896314328585115433801185469285519393301675281456855858469879487831401878 61499343288687517133657719225215877846712724793528489881530099264747499911931362 28739566933850526860649595914210716809461417450672618175137710224896371904307705 10478869744053478057468926661303628941311386201209706435030636121546501152544761 37222475370972939005274678215740982526736329435534998327674886146463697745461520 09115736247869184525017624867252655244438730369988160331530822222557322557802282 22545189440618887195663005102205880568804212868315118167454942283592882787960677 99138970167266541983747572031928278082379561087108001093185255133157603213228111 74551874725429024510534164290437901144195627369505423341053107456352730278204714 75171916695334413922742230363051782276180036450032986659366230138038009434833643 79196666718612445760871533669843642422644731783414369029203455782418318839659736 70464277897504804422285718805414056838109677721601149493640527558958772609182102 84653838580636769509678224907003950594751540941109570807505306632112802454990305 60428720556814894919342581940202339604025668795395174048158155317048186133236134 59569634070728621976684565197386958535747697083602064722726592789403043030205334 68855787008750363823352740464223844977721002487106554405179734304267001417003743 69768274972318512404312174883812533761363807916182632235009481089143227371839988 71860936664124587677433338664228970813863731322236865806701199074287987050421623 08129228001032752591351640476194847476274079818029309874461437772268031094623147 10745794479123089060415071951986046790549555721860277351950535008788942430893911 71685497866691728858103186059312432157566248156725363361128781924765952074534702 04095567998306549284198638127375481448861815906471417384150400129026567417364412 15388130341200468862510444984507458234836512236056782162393881314987190922775114 71774117876348243071809876894259712969641576077831965920629929311172721781262048 59483583724351162137476617349388056041726850481766280769870787379618399811963049 77347297443692232772734745065643641377538916313371570843400510719107278546040310 56661912399327163990113717931771304103252370739133147720921161383359465787538005 54496000867611076022362642991799891148981648599518229244638239890419357755738217 71117926501383950451027474316879647354300096588853600858482509704131190414155088 92989224852454880166630854104250679100231648668767642467113804437827333873427172 19617687908237068085472773625149911702865877909869169962279013326145079909834645 11365108451050247642424593816906080514864535057592064340745242952299592794046089 5999574830739220487885177135467529296875 分母が 183415348346310427170082907873044483389 27788403652464436013603090167690371022008206073132800412123475533740530013864431 50699201348689089398318817296567080085628130766564053772207936855097057338676865 39315925117586564079988426463162750620754020417852139764286848629578319318196433 90653118710890834878917532693918007736949037932690108677531247246445217618620933 77083309079006495846359993066201925474477092184388588211847835864755658180069189 34442573785303909629051909303114615361851725372382137668676374750793551931813772 54657283720025747577702415286436148733519762266362476022160314557989697057797288 37377634865579767022099162400535195772104454927003069055609460433504467283056163 49322642251836586536783514042428744481165285368077635134432257135699730948410954 82733192090142911950298856143412959831424203771990373387258748345662495493653573 25989063577987206990733686851252469604318272704597804448907578489185543105344206 60968455570617315724167991044241373041615816402475058108384182482529585713334188 82106318092078655919259545523389574111833323415045285317633097984002464132421799 17892291725651967757920158370361361425213078564315736374141322939027568514347694 67172453589275351774284690245705446300008257340478188210824179050319232592627351 76729068198531497928928192046765847464086024155110254942681084359997330102292227 24754531008411906678800328496739870898914617907697999468023726725256899559046872 67814440251305627412444960796034760682093156992656202282058057380926404833921118 12760379581751750972619472184964825174771897933819888191620330429718778408984493 27114269576461891121782620504940046533403555602150296079790509333005359572127636 47203777312288263684058199743483221667757293393997149522617511577535429174625143 11524011055181982561012698868296456634705175220595934494195037877111203976466690 65084032166851516670840525682345326261279391798336780207084739757605499242337474 55867045893155334888927120377118395477064260355759891987428804937683452418505338 32493409236271807978752077715810484411663685799306682058898663317062871902299838 10486896034760160229330429778529113305534043573027437301002639622248235387576479 15836554481945808117098747716738888912056872416559082614742939567529875368509119 52752348360017531425504676914080521495720307988749347658747080768139081266956012 95841240685248314459285403774591092556197699882294688204924987047894247910471745 91273521853309881524651082660711405128197890920403861034771136144442463738776557 28156772067635587538535763549528270594160096447861104116441895622933534612001337 89380001356047071929509036088427588333621180871339532441593230037653859733676591 25674362504804104697228040939502766846802513435164990942380501931011109584948942 00944057380915263832465725722318325384898548523487098042104203903160593599459898 13887769535727589921060056632533011221391972451854837231017063920226082105452729 84868661604318595568722523358152684382312635994344526872096955114446738490444589 81674759479436097300376447924712330385556531073229394634815876280657287954364944 97089605128585162343574041396053783277137601375048993439729217122522925066795657 22885071576164948971981559404072673727672194788372844436911135982674421315127686 45645756879076240614446862274955272411997056591553067468889392720784970081051919 65403478429348014137018017947648792649283725932733285728819076683358593623360926 81517563678474499631391557525042623462535473445991840745906057391949599362247758 28910134186379897476862100513213969924829935169076384805298653123520427148634372 66271419399879613021271239087167189148103029530311157701196847669141090425952935 77565529442322626232344436682569185248580407177156465641839033636627348969413466 31161565005692497233183469983037993946948875661677726489807627273135241694448856 87993328600441991835430538696263177066713574486696129419142353383032420430755898 04909889763361860921899603985920613850490891746173503443451549598910337358633767 47167744

  • Mr_Holland
  • ベストアンサー率56% (890/1576)
回答No.9

 #4/#7です。続報です。  フリーの数式処理ソフトwxMaximaを使って計算して見ました。 http://sourceforge.net/projects/wxmaxima  スターリング近似を使ったエクセルでの計算結果と比べると上位4桁で有効なようです。  1/7以下となる回数については変わらず、804回までのようです。 nusum(5000!/k!/(5000-k)!*5^(5000-k)/6^5000, k, 0, 714); ⇒ 157342905624351031453441519976/73366139338524170868033163149200000 =2.1446256685027871672684608452457e-6 nusum(5000!/k!/(5000-k)!*5^(5000-k)/6^5000, k, 0, 804); ⇒ 722381457175761595259102888799/5282362032373740302498387746740 =0.13675349261344442882404148206774 < 1/7 nusum(5000!/k!/(5000-k)!*5^(5000-k)/6^5000, k, 0, 805); ⇒ 767626744480031902246800605967/5282362032373740302498387746740 =0.14531884406549899143812507508072 > 1/7

moko_moco
質問者

お礼

あなたのおかげですっきりしました。 感謝の気持ちでいっぱいです。 #7で全部OKでした。 #12はどうでしょう?値はでますか? #9は自分理解できませんでした。 なんせCと言いう記号をおととい初めて知ったような数学オンチでして。。 …804回とは? 1/6のサイコロを5000回振った時、『1』の出る確率が、結果1/7以下になる確率は 5000÷714=7.0028011 5000÷715=6.9930069 ここが境界線ではないでしょか? 結果1/7以下になる確率 0.000214% 一億回に214回の割合 467290回に1回の割合。 5000回もサイコロを振れば結果1/7になるなんて普通ありえないって事。 自分なにか勘違いしているでしょうか?

noname#76525
noname#76525
回答No.8

こういう時に威力を発揮するのはXyzzyです。 桁数無制限で、分数計算もできるので誤差なしの結果がだせます。 CommonLispを覚えなければならないのが難点ですが。 結果は文字数オーバーでここには投稿できませんが、分子3880桁、分母3887桁の分数になります。 およそ3.720203×10^-7です。 これが10秒足らずの時間で計算できました。

参考URL:
http://xyzzy.s53.xrea.com/wiki/
  • Mr_Holland
  • ベストアンサー率56% (890/1576)
回答No.7

 #4です。お礼をありがとうございます。 >サイコロを5000回振るという行為をやった時『1』が714回になる確率は0.0000372% >10億回に372回の割合、つまりサイコロを5000回振るという行為を約269万回すると1回くらいの割合ということで良いでしょか?  そうだと思います。 >とてつもなく手作業で計算するしかないという事でしょうか。。  近似値で良ければ「スターリングの近似」を使ってエクセルで計算することができます。(5000_C_714の場合は有効数字3桁まで同じでした。) http://ja.wikipedia.org/wiki/%E3%82%B9%E3%82%BF%E3%83%BC%E3%83%AA%E3%83%B3%E3%82%B0%E3%81%AE%E8%BF%91%E4%BC%BC  この近似を使った場合、n_C_k (1/6)^k (5/6)^(n-k)の自然対数は次のようになると思います。   k ln(n/k-1)-n ln(1-k/n)+1/2 ln[n/{2πk(n-k)}]+n ln(5/6)-k ln(5)  ここで求めた数値を指数関数expの引数にして求めれば、それがn_C_k (1/6)^k (5/6)^(n-k) の近似値になります。  あとは、kを0~714の間で振って、それらを足し合わせれば、『1』が714回以下出る確率を求めることができます。  ちなみに、私がエクセルで計算したところ次のような結果になりました。   714回以下の確率: 2.14488E-06   804回以下の確率: 0.136768326   805回以下の確率: 0.145334592 >サイコロを5000回振った時、『1』の出る確率が、結果1/7以下になる確率はアバウトどれくらいなのでしょうか?  上記の計算結果から、『1』が804回以下出るとすれば、結果は1/7以下になると思います。  参考までにエクセルに入力した式を以下に記しておきます。  A1~A806セル: すべて 5000 を入力  B1~B806セル: 0から昇順に805まで入力  C1セル:    空欄  C2セル:    =B2*LN(A2/B2-1)-A2*LN(1-B2/A2)+1/2*LN(A2/(2*PI()*B2*(A2-B2)))+A2*LN(5/6)-B2*LN(5)  C3~C806セル: C2セルの式を以下コピー  D1セル:    =(5/6)^5000  D2セル:    =EXP(C2)  D3~D806セル: D2セルの式を以下コピー  E1セル:    =SUM(D1:D715)           ←714回以下出る確率  E2セル:    =SUMIF(B1:B806,"<=804",D1:D806)  ←804回以下の確率  E3セル:    =SUMIF(B1:B806,"<=805",D1:D806)  ←805回以下の確率

moko_moco
質問者

お礼

非常にありがとうございます!! まさにこれです自分が知りたかった計算式 完璧です この計算式なら分母が6以外でも試行回数が65536回まで簡単に一覧できます。 本当にありがとう。

  • ltx78
  • ベストアンサー率45% (10/22)
回答No.6

値を概算できればよいのなら対数を使うのが良いでしょう. 正確な値を計算するにはかなり大変な計算が必要なのは,すでに指摘がなされている通りです. 5000C714 * (1/6)^714 * (5/6)^4286 の対数(底は10とします)を取ると, log (5000C714) + 714 log (1/6) + 4286 log (5/6) となります. 5000C714 = (5000 * ... * 4287) / (714 * ... * 1) なので, log (5000C714) = log 5000 + log 4999 + ... + log 4287 - log 714 - ... - log 1 です. この値を(プログラムを書いて)計算すると,およそ -6.4294 となりました. なので,求めたい確率は 10^(-6.4294) = 10^(0.5706) * 10^(-7) です.これならばWindowsの関数電卓でも計算できますね.

関連するQ&A