高校数学の質問スレ(医者・東大卒専用) Part438 (899レス)
高校数学の質問スレ(医者・東大卒専用) Part438 http://rio2016.5ch.net/test/read.cgi/math/1723152147/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
必死チェッカー(本家)
(べ)
自ID
レス栞
あぼーん
108: 132人目の素数さん [sage] 2024/08/21(水) 08:28:52.22 ID:trPnwZW4 >>106 で、3Dグラフの動画はまだできんのだが? http://rio2016.5ch.net/test/read.cgi/math/1723152147/108
110: 132人目の素数さん [sage] 2024/08/21(水) 10:42:51.81 ID:trPnwZW4 >>107 レスありがとうございます。 コードを解読しました。 (* a 人でジャンケンして参加者が b 人になる確率,a==b ならアイコ *) p[a_,b_]:=p[a,b]=If[a==b,1-(2^a-2)/3^(a-1),Binomial[a,b]/3^(a-1)] m=11; (* 参加者数の変遷を列挙 *) f=Flatten[Table[{m,m-x1,m-x2,m-x3,m-x4,m-x5,m-x6,m-x7,m-x8,m-x9,1}, {x1,0,m-1},{x2,x1,m-1},{x3,x2,m-1},{x4,x3,m-1},{x5,x4,m-1}, {x6,x5,m-1},{x7,x6,m-1},{x8,x7,m-1},{x9,x8,m-1}],8]; (* 変遷確率積の総和*) Total[Product[p[#[[k]],#[[k+1]]],{k,1,10}] & /@f] % // N 正しいように思いますので自分のコードのデバッグ作業に移ります。 http://rio2016.5ch.net/test/read.cgi/math/1723152147/110
111: 132人目の素数さん [sage] 2024/08/21(水) 11:14:42.94 ID:trPnwZW4 デバッグして、数値が合致しました。 Wolfram Language 14.0.0 Engine for Microsoft Windows (64-bit) Copyright 1988-2023 Wolfram Research, Inc. In[1]:= (* jan[n_,m_] := n 人でジャンケンして参加者が m 人になる確率 *) In[2]:= jan[n_,m_] := ( If[m==0 || m>n, Return[0]]; If[m==n,1 - 3*(2^n-2)/3^n,3*Binomial[n,m]/3^n] ) In[3]:= n=11; In[4]:= (* 10回以下で終了する確率*) In[5]:= Total@Flatten@Table[jan[n,x1]jan[x1,x2]jan[x2,x3]jan[x3,x4]jan[x4,x5]jan[x5,x6]jan[x6,x7]jan[x7,x8]jan[x8,x9]jan[x9,1] ,{x1,1,n},{x2,1,x1},{x3,1,x2},{x4,1,x3},{x5,1,x4},{x6,1,x5},{x7,1,x6},{x8,1,x7},{x9,1,x8}] 449687340186660888579056289638229806808082 Out[5]= ------------------------------------------- 2909321189362570808630465826492242446680483 http://rio2016.5ch.net/test/read.cgi/math/1723152147/111
112: 132人目の素数さん [sage] 2024/08/21(水) 11:27:27.25 ID:trPnwZW4 (* 各回ごとの確率 *) pn={jan[n,1]}; Total@Flatten@Table[jan[n,x1]jan[x1,1],{x1,2,n}]//AppendTo[pn,#]&; Total@Flatten@Table[jan[n,x1]jan[x1,x2]jan[x2,1],{x1,2,n},{x2,2,x1}]//AppendTo[pn,#]&; Total@Flatten@Table[jan[n,x1]jan[x1,x2]jan[x2,x3]jan[x3,1],{x1,2,n},{x2,2,x1},{x3,2,x2}]//AppendTo[pn,#]&; Total@Flatten@Table[jan[n,x1]jan[x1,x2]jan[x2,x3]jan[x3,x4]jan[x4,1],{x1,2,n},{x2,2,x1},{x3,2,x2},{x4,2,x3}]//AppendTo[pn,#]&; Total@Flatten@Table[jan[n,x1]jan[x1,x2]jan[x2,x3]jan[x3,x4]jan[x4,x5]jan[x5,1],{x1,2,n},{x2,2,x1},{x3,2,x2},{x4,2,x3},{x5,2,x4}]//AppendTo[pn,#]&; Total@Flatten@Table[jan[n,x1]jan[x1,x2]jan[x2,x3]jan[x3,x4]jan[x4,x5]jan[x5,x6]jan[x6,1],{x1,2,n},{x2,2,x1},{x3,2,x2},{x4,2,x3},{x5,2,x4},{x6,2,x5}]//AppendTo[pn,#]&; Total@Flatten@Table[jan[n,x1]jan[x1,x2]jan[x2,x3]jan[x3,x4]jan[x4,x5]jan[x5,x6]jan[x6,x7]jan[x7,1],{x1,2,n},{x2,2,x1},{x3,2,x2},{x4,2,x3},{x5,2,x4},{x6,2,x5},{x7,2,x6}]//AppendTo[pn,#]&; Total@Flatten@Table[jan[n,x1]jan[x1,x2]jan[x2,x3]jan[x3,x4]jan[x4,x5]jan[x5,x6]jan[x6,x7]jan[x7,x8]jan[x8,1],{x1,2,n},{x2,2,x1},{x3,2,x2},{x4,2,x3},{x5,2,x4},{x6,2,x5},{x7,2,x6},{x8,2,x7}]//AppendTo[pn,#]&; Total@Flatten@Table[jan[n,x1]jan[x1,x2]jan[x2,x3]jan[x3,x4]jan[x4,x5]jan[x5,x6]jan[x6,x7]jan[x7,x8]jan[x8,x9]jan[x9,1],{x1,2,n},{x2,2,x1},{x3,2,x2},{x4,2,x3},{x5,2,x4},{x6,2,x5},{x7,2,x6},{x8,2,x7},{x9,2,x8}]//AppendTo[pn,#]& Total@pn http://rio2016.5ch.net/test/read.cgi/math/1723152147/112
113: 132人目の素数さん [sage] 2024/08/21(水) 11:44:00.03 ID:trPnwZW4 シミュレーションによる検証 Wolfram Language 14.0.0 Engine for Microsoft Windows (64-bit) Copyright 1988-2023 Wolfram Research, Inc. In[1]:= j[n_] :=( (* n人でジャンケンして勝者が決まるまでの回数と勝者の数*) count=0; Until[Length@Union@a==2,a=RandomChoice[Range[3],n];count++]; b=Sort@Union@a; If[b=={1,2}, winners=Count[a,2]]; If[b=={2,3}, winners=Count[a,3]]; If[b=={1,3}, winners=Count[a,1]] ; {winners,count} ) In[2]:= In[2]:= sim[n_] :=((* 勝者が一人になるまでの回数 *) For[{winner,counts}=j[n],winner>1,k=j[winner];winner=k[[1]];counts=counts+k[[2]]]; counts ) In[3]:= res11=Table[sim[11],10^6]; In[4]:= Histogram[res11,"Scott","PDF"] Out[4]= -Graphics- In[5]:= Mean[res11] // N Out[5]= 34.9504 In[6]:= Median[res11] Out[6]= 27 In[7]:= N@Mean@Boole[#<=10&/@res11] Out[7]= 0.154785 In[8]:= 449687340186660888579056289638229806808082/2909321189362570808630465826492242446680483 449687340186660888579056289638229806808082 Out[8]= ------------------------------------------- 2909321189362570808630465826492242446680483 In[9]:= % // N Out[9]= 0.154568 http://rio2016.5ch.net/test/read.cgi/math/1723152147/113
117: 132人目の素数さん [sage] 2024/08/21(水) 17:57:45.90 ID:trPnwZW4 >>115 Flattenの使い方とか熟練者のコード解析は勉強になる。 http://rio2016.5ch.net/test/read.cgi/math/1723152147/117
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
2.225s*