Jump to content

Template:Random number/testcases

From Wikipedia, the free encyclopedia

Testing sandbox version compared to main version

[edit]
Clic purge to get new ouputs.
Code Result with sandbox template Result with main template Note
{{Random number}} 98 83 default parameters (results range is 0..99)
{{Random number|100|298|67}} 0 (KO) 83 (ok) should be same as above (the default seed depends on current day of year, the default prime is 67)
{{Random number|10000}} 871 5783 new parameters (results range in 0..9999)
{{Random number|10000|298|67}} 9081 (KO) 5783 (ok) Should be same as above
{{Random number|10000|298|61}} 8037 8106 (use another prime) this and others should all be different
{{Random number|10000|6}} 7404 6219 (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}} 8832 6152
{{Random number|10000|4}} 5838 6085
{{Random number|10000|3}} 6313 6018
{{Random number|10000|2}} 8956 5951
{{Random number|10000|1}} 7102 5884
{{Random number|10000|0}} 4769 5817
{{Random number|10000|6|2}} 4899 1976 (varying the seed) with a small prime (2) should still get distinct values in the linear sequence
{{Random number|10000|5|2}} 8677 1974
{{Random number|10000|4|2}} 6865 1972
{{Random number|10000|3|2}} 5055 1970
{{Random number|10000|2|2}} 8841 1968
{{Random number|10000|1|2}} 3904 1966 (varying now the prime number) should get distinct non-linear sequences
{{Random number|10000|1|3}} 807 2951
{{Random number|10000|1|5}} 8695 4916
{{Random number|10000|1|7}} 6006 6887
{{Random number|10000|1|11}} 8843 820
{{Random number|10000|1|13}} 1514 2789
{{Random number|10000|1|17}} 9633 6721
{{Random number|10000|1|19}} 9001 8681
{{Random number|10000|1|23}} 5999 2622
{{Random number|10000|1|29}} 4201 8507
{{Random number|10000|1|31}} 2388 488
{{Random number|10000|1|37}} 4990 6383
{{Random number|10000|1|41}} 8839 303
{{Random number|10000|1|43}} 8143 2284
{{Random number|10000|1|47}} 740 6241
{{Random number|10000|1|51}} 109 177
{{Random number|10000|1|53}} 3892 2137
{{Random number|10000|1|59}} 7908 8018
{{Random number|10000|1|61}} 7284 9989
{{Random number|10000|1|67}} 430 5884
{{Random number|10000|1|71}} 3660 9833
{{Random number|10000|1|73}} 3028 1806
{{Random number|10000|1|79}} 6807 7726

Sandbox notes

[edit]

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).