Unbias a random generator: Difference between revisions

Content added Content deleted
m (output to pre)
Line 118: Line 118:


return 0;
return 0;
}</lang>
}</lang>output<lang>bias 3: 33.090% vs 49.710%
output
<pre>bias 3: 33.090% vs 49.710%
bias 4: 25.130% vs 49.430%
bias 4: 25.130% vs 49.430%
bias 5: 19.760% vs 49.650%
bias 5: 19.760% vs 49.650%
bias 6: 16.740% vs 50.030%</lang>
bias 6: 16.740% vs 50.030%</pre>


=={{header|C sharp}}==
=={{header|C sharp}}==
Line 253: Line 255:
</lang>
</lang>
output
output
<lang>
<pre>
> coffee unbiased.coffee
> coffee unbiased.coffee


Line 271: Line 273:
ratio of 1s: 0.1664843 [biased]
ratio of 1s: 0.1664843 [biased]
ratio of 1s: 0.4997813 [unbiased]
ratio of 1s: 0.4997813 [unbiased]
</lang>
</pre>


=={{header|Common Lisp}}==
=={{header|Common Lisp}}==
Line 284: Line 286:
(let ((u (loop repeat 10000 collect (unbiased n)))
(let ((u (loop repeat 10000 collect (unbiased n)))
(b (loop repeat 10000 collect (biased n))))
(b (loop repeat 10000 collect (biased n))))
(format t "~a: unbiased ~d biased ~d~%" n (count 0 u) (count 0 b))))</lang>output<lang>3: unbiased 4992 biased 3361
(format t "~a: unbiased ~d biased ~d~%" n (count 0 u) (count 0 b))))</lang>
output
<pre>3: unbiased 4992 biased 3361
4: unbiased 4988 biased 2472
4: unbiased 4988 biased 2472
5: unbiased 5019 biased 1987
5: unbiased 5019 biased 1987
6: unbiased 4913 biased 1658</lang>
6: unbiased 4913 biased 1658</pre>


=={{header|D}}==
=={{header|D}}==
Line 870: Line 874:
100 * sqrt($fixed[0] * $fixed[1]) / ($fixed[0] + $fixed[1])**1.5);
100 * sqrt($fixed[0] * $fixed[1]) / ($fixed[0] + $fixed[1])**1.5);


}</lang>
}</lang>Output:<lang>Bias 3: 6684 3316, 66.84+-0.471% fixed: 2188 2228, 49.5471+-0.752%
Output:
<pre>Bias 3: 6684 3316, 66.84+-0.471% fixed: 2188 2228, 49.5471+-0.752%
Bias 4: 7537 2463, 75.37+-0.431% fixed: 1924 1845, 51.048+-0.814%
Bias 4: 7537 2463, 75.37+-0.431% fixed: 1924 1845, 51.048+-0.814%
Bias 5: 7993 2007, 79.93+-0.401% fixed: 1564 1597, 49.478+-0.889%
Bias 5: 7993 2007, 79.93+-0.401% fixed: 1564 1597, 49.478+-0.889%
Bias 6: 8309 1691, 83.09+-0.375% fixed: 1403 1410, 49.8756+-0.943%</lang>
Bias 6: 8309 1691, 83.09+-0.375% fixed: 1403 1410, 49.8756+-0.943%</pre>


=={{header|Perl 6}}==
=={{header|Perl 6}}==