Seven-sided dice from five-sided dice: Difference between revisions

m
→‎{{header|REXX}}: added/changed comments and whitespace, changed indentations, elided a blank line in the output, added option to specify a seed (for RANDOM) for repeatability, change height of output window.
(Added Kotlin)
m (→‎{{header|REXX}}: added/changed comments and whitespace, changed indentations, elided a blank line in the output, added option to specify a seed (for RANDOM) for repeatability, change height of output window.)
Line 1,446:
 
=={{header|REXX}}==
<lang rexx>/*REXX program simulatesimulates a seven─sided 7─sided die based on a five─sided5─sided throw. for a number of trials. */
parse arg trials sample seed . /*obtain optional arguments from the CL*/
if trials=='' | trials="," then trials= 1 /*Not specified? Then use the default.*/
if sample=='' | sample="," then sample=1000000 /* " " " " " " */
if datatype(seed,'W') then call random ,,seed /*Numeric? Then use it as a RAND seed.*/
 
/* [↑] one million samples to be used.*/
do #=1 for trials; die.=0 /*performs the number of desired trials*/
k=0
do until k==sample; r=5 * random(1, 5) + random(1, 5) - 6
if r>20 then iterate
k=k+1; r=r // 7 + 1; die.r=die.r + 1
end /*until*/
say
expect=sample%7
say center('trial:'right(#, 4) " " sample 'samples, expect='expect, 7980, "─")
 
say
do j=1 for 7
say ' side' j "had " die.j ' occurrences',
' difference from expected:'right(die.j-expect, length(sample))
end /*j*/
end /*#*/ /*stick a fork in it, we're all done. */</lang>
{{out|output|text=&nbsp; when using the input of: &nbsp; &nbsp; <tt> 11 </tt>}}
 
<br>(Shown at five-sixth size.)
 
<pre style="font-size:84%;height:75ex71ex">
─────────────────trial: 1 1000000 samples, expect=142857─────────────────142857──────────────────
side 1 had 142990 occurrences difference from expected: 133
 
side 12 had 142879142811 occurrences difference from expected: 22-46
side 23 had 142980143348 occurrences difference from expected: 123491
side 34 had 142366143219 occurrences difference from expected: -491 362
side 45 had 143129142717 occurrences difference from expected: 272-140
side 56 had 143316141951 occurrences difference from expected: 459-906
side 67 had 142742142964 occurrences difference from expected: -115 107
side 7 had 142588 occurrences difference from expected: -269
 
─────────────────trial: 2 1000000 samples, expect=142857─────────────────
 
side 1 had 142583 occurrences difference from expected: -274
side 2 had 142797 occurrences difference from expected: -60
side 3 had 143093 occurrences difference from expected: 236
side 4 had 142168 occurrences difference from expected: -689
side 5 had 143203 occurrences difference from expected: 346
side 6 had 143260 occurrences difference from expected: 403
side 7 had 142896 occurrences difference from expected: 39
 
─────────────────trial: 3 1000000 samples, expect=142857─────────────────
 
side 1 had 143089 occurrences difference from expected: 232
side 2 had 142815 occurrences difference from expected: -42
side 3 had 142645 occurrences difference from expected: -212
side 4 had 142959 occurrences difference from expected: 102
side 5 had 142764 occurrences difference from expected: -93
side 6 had 143205 occurrences difference from expected: 348
side 7 had 142523 occurrences difference from expected: -334
 
─────────────────trial: 4 1000000 samples, expect=142857─────────────────
 
side 1 had 142535 occurrences difference from expected: -322
side 2 had 142316 occurrences difference from expected: -541
side 3 had 143101 occurrences difference from expected: 244
side 4 had 143159 occurrences difference from expected: 302
side 5 had 143130 occurrences difference from expected: 273
side 6 had 142551 occurrences difference from expected: -306
side 7 had 143208 occurrences difference from expected: 351
 
─────────────────trial: 5 1000000 samples, expect=142857─────────────────
 
side 1 had 143335 occurrences difference from expected: 478
side 2 had 142296 occurrences difference from expected: -561
side 3 had 142500 occurrences difference from expected: -357
side 4 had 142775 occurrences difference from expected: -82
side 5 had 142581 occurrences difference from expected: -276
side 6 had 143363 occurrences difference from expected: 506
side 7 had 143150 occurrences difference from expected: 293
 
─────────────────trial: 6 1000000 samples, expect=142857─────────────────
 
side 1 had 142593 occurrences difference from expected: -264
side 2 had 143012 occurrences difference from expected: 155
side 3 had 142703 occurrences difference from expected: -154
side 4 had 143702 occurrences difference from expected: 845
side 5 had 142867 occurrences difference from expected: 10
side 6 had 142158 occurrences difference from expected: -699
side 7 had 142965 occurrences difference from expected: 108
 
─────────────────trial: 72 1000000 samples, expect=142857─────────────────142857──────────────────
side 1 had 142707 occurrences difference from expected: -150
side 2 had 142512 occurrences difference from expected: -345
side 3 had 143038 occurrences difference from expected: 181
side 4 had 143268 occurrences difference from expected: 411
side 5 had 142629 occurrences difference from expected: -228
side 6 had 142902 occurrences difference from expected: 45
side 7 had 142944 occurrences difference from expected: 87
 
─────────────────trial: 3 1000000 samples, expect=142857──────────────────
side 1 had 143065 occurrences difference from expected: 208
side 21 had 142892142743 occurrences difference from expected: 35-114
side 32 had 142681142674 occurrences difference from expected: -176183
side 43 had 142637142834 occurrences difference from expected: -22023
side 54 had 142563142668 occurrences difference from expected: -294189
side 65 had 142934143108 occurrences difference from expected: 77251
side 76 had 143228142727 occurrences difference from expected: 371-130
side 7 had 143246 occurrences difference from expected: 389
 
─────────────────trial: 84 1000000 samples, expect=142857─────────────────142857──────────────────
side 1 had 142575 occurrences difference from expected: -282
side 2 had 143139 occurrences difference from expected: 282
side 3 had 142618 occurrences difference from expected: -239
side 4 had 142647 occurrences difference from expected: -210
side 5 had 142204 occurrences difference from expected: -653
side 6 had 143228 occurrences difference from expected: 371
side 7 had 143589 occurrences difference from expected: 732
 
─────────────────trial: 5 1000000 samples, expect=142857──────────────────
side 1 had 142745 occurrences difference from expected: -112
side 21 had 142906142539 occurrences difference from expected: 49-318
side 32 had 142894143490 occurrences difference from expected: 37633
side 43 had 142976142261 occurrences difference from expected: 119-596
side 54 had 142265142755 occurrences difference from expected: -592102
side 65 had 142909142976 occurrences difference from expected: 52119
side 76 had 143305143188 occurrences difference from expected: 448331
side 7 had 142791 occurrences difference from expected: -66
 
─────────────────trial: 96 1000000 samples, expect=142857─────────────────142857──────────────────
side 1 had 142706 occurrences difference from expected: -151
side 2 had 142344 occurrences difference from expected: -513
side 3 had 143243 occurrences difference from expected: 386
side 4 had 143626 occurrences difference from expected: 769
side 5 had 142555 occurrences difference from expected: -302
side 6 had 142530 occurrences difference from expected: -327
side 7 had 142996 occurrences difference from expected: 139
 
─────────────────trial: 7 1000000 samples, expect=142857──────────────────
side 1 had 142320 occurrences difference from expected: -537
side 21 had 142510142901 occurrences difference from expected: -347 44
side 32 had 142867142950 occurrences difference from expected: 1093
side 43 had 143711143147 occurrences difference from expected: 854290
side 54 had 142732142081 occurrences difference from expected: -125776
side 65 had 143115143423 occurrences difference from expected: 258566
side 76 had 142745141965 occurrences difference from expected: -112892
side 7 had 143533 occurrences difference from expected: 676
 
─────────────────trial: 10 8 1000000 samples, expect=142857─────────────────142857──────────────────
side 1 had 142818 occurrences difference from expected: -39
side 2 had 142681 occurrences difference from expected: -176
side 3 had 142886 occurrences difference from expected: 29
side 4 had 142975 occurrences difference from expected: 118
side 5 had 142987 occurrences difference from expected: 130
side 6 had 142781 occurrences difference from expected: -76
side 7 had 142872 occurrences difference from expected: 15
 
─────────────────trial: 9 1000000 samples, expect=142857──────────────────
side 1 had 142725 occurrences difference from expected: -132
side 21 had 142865143501 occurrences difference from expected: 8644
side 32 had 143076142404 occurrences difference from expected: 219-453
side 43 had 142759142882 occurrences difference from expected: -98 25
side 54 had 142593143051 occurrences difference from expected: -264 194
side 65 had 142750142479 occurrences difference from expected: -107378
side 76 had 143232142664 occurrences difference from expected: 375-193
side 7 had 143019 occurrences difference from expected: 162
 
─────────────────trial: 1110 1000000 samples, expect=142857─────────────────142857──────────────────
side 1 had 142945 occurrences difference from expected: 88
side 2 had 143142 occurrences difference from expected: 285
side 3 had 142843 occurrences difference from expected: -14
side 4 had 143043 occurrences difference from expected: 186
side 5 had 142558 occurrences difference from expected: -299
side 6 had 142834 occurrences difference from expected: -23
side 7 had 142635 occurrences difference from expected: -222
 
─────────────────trial: 11 1000000 samples, expect=142857──────────────────
side 1 had 142825 occurrences difference from expected: -32
side 21 had 142870143248 occurrences difference from expected: 13391
side 32 had 142919142878 occurrences difference from expected: 6221
side 43 had 143098142229 occurrences difference from expected: 241-628
side 54 had 142627142902 occurrences difference from expected: -230 45
side 65 had 143163142685 occurrences difference from expected: 306-172
side 76 had 142498143214 occurrences difference from expected: -359 357
side 7 had 142844 occurrences difference from expected: -13
</pre>