Template:Random number/testcases

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search

Testing sandbox version compared to main version

[edit source]
Clic purge to get new ouputs.
Code Result with sandbox template Result with main template Note
{{Random number}} 91 91 default parameters (results range is 0..99)
{{Random number|100|115|67}} 91 (ok) 91 (ok) should be same as above (the default seed depends on current day of year, the default prime is 67)
{{Random number|10000}} 7091 7091 new parameters (results range in 0..9999)
{{Random number|10000|115|67}} 7091 (ok) 7091 (ok) Should be same as above
{{Random number|10000|115|61}} 479 479 (use another prime) this and others should all be different
{{Random number|10000|6}} 9788 9788 (varying the seed) note that the sequence is linear but the distance only depends on the value of the default prime (67)
{{Random number|10000|5}} 9721 9721
{{Random number|10000|4}} 9654 9654
{{Random number|10000|3}} 9587 9587
{{Random number|10000|2}} 9520 9520
{{Random number|10000|1}} 9453 9453
{{Random number|10000|0}} 9386 9386
{{Random number|10000|6|2}} 8651 8651 (varying the seed) with a small prime (2) should still get distinct values in the linear sequence
{{Random number|10000|5|2}} 8649 8649
{{Random number|10000|4|2}} 8647 8647
{{Random number|10000|3|2}} 8645 8645
{{Random number|10000|2|2}} 8643 8643
{{Random number|10000|1|2}} 8641 8641 (varying now the prime number) should get distinct non-linear sequences
{{Random number|10000|1|3}} 2961 2961
{{Random number|10000|1|5}} 1601 1601
{{Random number|10000|1|7}} 244 244
{{Random number|10000|1|11}} 7527 7527
{{Random number|10000|1|13}} 6161 6161
{{Random number|10000|1|17}} 3449 3449
{{Random number|10000|1|19}} 2091 2091
{{Random number|10000|1|23}} 9361 9361
{{Random number|10000|1|29}} 5292 5292
{{Random number|10000|1|31}} 3933 3933
{{Random number|10000|1|37}} 9850 9850
{{Random number|10000|1|41}} 7138 7138
{{Random number|10000|1|43}} 5787 5787
{{Random number|10000|1|47}} 3074 3074
{{Random number|10000|1|51}} 363 363
{{Random number|10000|1|53}} 8982 8982
{{Random number|10000|1|59}} 4884 4884
{{Random number|10000|1|61}} 3525 3525
{{Random number|10000|1|67}} 9453 9453
{{Random number|10000|1|71}} 6726 6726
{{Random number|10000|1|73}} 5385 5385
{{Random number|10000|1|79}} 1338 1338

Sandbox notes

[edit source]

This version uses fmod builtin operator (no longer need of Template:Mod) and the largest Mersenne prime (231−1) that fits in 32 bits.

This Mersenne prime is chosen to offer equal distribution when reducing the number of digits (better than bitmasking by an exact power of 2).

The next Mersenne prime (261−1) is too large to fit in 64-bit integers for computing products by reasonable primes (we could only use 2, 3, 5 or 7), or even just in the 52 bits of precision of a double float (used by #expr).