2: 2016-06-21 (火) 02:41:08 osinko |
3: 2016-06-21 (火) 12:40:59 osinko |
| + | #jsmath |
| **コードで数え上げる [#t208b7de] | | **コードで数え上げる [#t208b7de] |
| 確率の問題を考える | | 確率の問題を考える |
| var queary = strList.AsQueryable().Where(item => item.Contains("HHTT")); | | var queary = strList.AsQueryable().Where(item => item.Contains("HHTT")); |
| var queList = queary.ToList(); | | var queList = queary.ToList(); |
- | queList.Add("カウント数" + queList.Count.ToString()); | + | queList.Add("検索前総数" + strList.Count().ToString()); |
| + | queList.Add("カウント数" + (queList.Count-1).ToString()); |
| SaveText(folder, @"\HHTT抜き出し.txt", queList.ToArray()); | | SaveText(folder, @"\HHTT抜き出し.txt", queList.ToArray()); |
| } | | } |
| }} | | }} |
| | | |
- | これを15回ぐらいまで記録して以下のような表を作った | + | これを16回ぐらいまで記録して以下のような表を作った |
| | | |
- | |4回|5回|6回|7回|8回|9回|10回|11回|12回|13回|14回|15回| | + | |4回|5回|6回|7回|8回|9回|10回|11回|12回|13回|14回|15回|16回| |
- | |1/16| | | | | | | | | | | | | + | |1/16 |4/32|12/64|32/128|79/256|186/512|424/1024|944/2048|2065/4096|4456/8192|9512/16384|20128/32768|42287/65536| |
| | | |
- | この表の結果が正しいかどうかを確認する。実際にコンピューター内で50%ずつ表裏がランダムに出るコインを指定回数投げてHHTTが出た回数を数える。これを5回繰り返して値の様子を見る。このコードは以下になる | + | これを分母を揃えて数列にすると |
| | | |
- | ***niji_prob [#i2d517d8] | + | \(\frac { 4096 }{ 65536 } ,\frac { 8192 }{ 65536 } ,\frac { 12288 }{ 65536 } ,\frac { 16384 }{ 65536 } ,\frac { 20224 }{ 65536 } ,\frac { 23808 }{ 65536 } ,\frac { 27136 }{ 65536 } ,\frac { 30208 }{ 65536 } ,\frac { 33040 }{ 65536 } ,\frac { 35648 }{ 65536 } ,\frac { 38048 }{ 65536 } ,\frac { 40256 }{ 65536 } ,\frac { 42287 }{ 65536 } \) |
| + | |
| + | となる。この分子の変化の様子を観察すると4~7回目まで4096の等差数列だが、8回目から妙なズレが生じ始める。この性質を見抜きたいが、その前にこの値が正しい確率を導くものなのか、その根拠を確かめておく |
| + | 実際にコンピューター内で50%ずつ表裏がランダムに出るコインを指定回数投げてHHTTが出た回数を数える。このコードは以下になる |
| + | |
| + | ***niji_prob.cs [#i2d517d8] |
| #code(csharp){{ | | #code(csharp){{ |
| using UnityEngine; | | using UnityEngine; |