Talk:Dice game probabilities: Difference between revisions

From Rosetta Code
Content added Content deleted
m (→‎Results compared: added result for ooRexx run with Numeric Digits 1000)
Line 44: Line 44:
</pre>
</pre>
--[[User:Walterpachl|Walterpachl]] ([[User talk:Walterpachl|talk]]) 08:20, 22 January 2015 (UTC)
--[[User:Walterpachl|Walterpachl]] ([[User talk:Walterpachl|talk]]) 08:20, 22 January 2015 (UTC)

== Rational Arithmetic ==

Inspired by Racket I boosted ooRexx and PL/I by using Rational Arithmetic. Actually I should have used the implementation that can be found here on RC! but I rolled my own before looking. --[[User:Walterpachl|Walterpachl]] ([[User talk:Walterpachl|talk]]) 18:57, 22 January 2015 (UTC)

Revision as of 18:57, 22 January 2015

Test runs

Test runs with 10000 samples show
0.5751 player 1 wins (agrees with shown probabilities)
0.3535 player 2 wins
0.0714 draws
and for the second part:
0.6405 player 1 wins (differs considerably)
0.3147 player 2 wins
0.0448 draws

Can somebody show the pseudo code ?

--Walterpachl (talk) 15:14, 16 January 2015 (UTC)

Second part is ten 5-sided dice vs seven 6-sided dice, no? Never mind, everyone else (i.e. Bearophile and I) used the wrong numbers. Your result is correct. --Ledrug (talk) 05:38, 18 January 2015 (UTC)
:-) Still: Is your solution built analytically? Pseudocode? My attempt to translate it to REXX got stuck in the recursion. :-( --Walterpachl (talk) 07:34, 18 January 2015 (UTC)
Oh well. REXX and ooRexx show now the algorithm. What have we learned? Testing is always a good idea! --Walterpachl (talk) 07:40, 19 January 2015 (UTC)

Change of D's results: I don't have D, so I can't test. How did the corrected (or the previous, incorrect) results come about? Just being curious: --Walterpachl (talk) 06:40, 21 January 2015 (UTC)

Results compared

Numeric Digits 130
Say 3781171969/5882450000
/*
0.642788628717626159168373721835
C         0.6427886287176260
D         0.6427886287176262
ooRexx    0.642788628717626159168373721835
REXX      0.642788628717626159168373721835
PL/I      0.642703175544738770
Python    0.642788628718
Python v2 0.6427886287176262
Python v3 0.6427886287176262
Racket    0.6427886287176261591683737218335897457691948082856632865557718297648088806534692177579069945345901793
          0.6427886287176261591683737218335897457691948082856632865557718297648088806534692177579069945345901792620421763040909824987887699853
ooRexx (*)0.64278862871762615916837372183358974576919480828566328655577182976480888065346921775790699453459017926204217630409098249878876998529524262849

Racket    (3781171969/5882450000)
*/

--Walterpachl (talk) 08:20, 22 January 2015 (UTC)

Rational Arithmetic

Inspired by Racket I boosted ooRexx and PL/I by using Rational Arithmetic. Actually I should have used the implementation that can be found here on RC! but I rolled my own before looking. --Walterpachl (talk) 18:57, 22 January 2015 (UTC)