Template:Rand: Difference between revisions
(Replaced content with "<includeonly>{{Mod|(({{#time:U}}+({{{2|{{#time:z}}}}}))*({{{3|67}}})+({{NUMBEROFARTICLES:R}} mod ({{{3|67}}})))|{{{1|100}}}}}</includeonly><noinclude> <!-- Please put all...") |
m (Added the doc to the template) |
||
Line 2: | Line 2: | ||
<!-- Please put all metadata in documentation page [[Template:Rand/doc]] --> | <!-- Please put all metadata in documentation page [[Template:Rand/doc]] --> | ||
</noinclude> | </noinclude> | ||
{{Rand/doc}} |
Revision as of 23:14, 30 January 2015
This template generates a pseudo-random integer between 0 and count-1.
- Usage:
- {{Rand|count|seed|prime}}
- All parameters are optional and have default values. They must be integers.
- The default count is 100 (so by default, this template generates values between 0 and 99) and must be non-zero.
- The default seed is {{#time:z}} (currently 326, i.e. the current day number in the year, at the time this page was last saved or purged from the cache) and can be set to any other integer value (used to generate distinct values on the same page).
- The default prime is 67 and should be a prime number above 17 (used to generate distinct values on the same page).
- Examples generating numbers between 0 and 999:
- {{Rand|1000}} = 84
Template loop detected: Template:Rand/doc
- {{Rand|1000}} = 84
Template loop detected: Template:Rand/doc (same day, same output)
- {{Rand|1000|326|67}} = 84
Template loop detected: Template:Rand/doc (same as above)
- {{Rand|1000|326|61}} = 197
Template loop detected: Template:Rand/doc (this and others should all be different)
- {{Rand|1000|6}} = 644
Template loop detected: Template:Rand/doc
- {{Rand|1000|5}} = 577
Template loop detected: Template:Rand/doc
- {{Rand|1000|4}} = 510
Template loop detected: Template:Rand/doc
- {{Rand|1000|3}} = 443
Template loop detected: Template:Rand/doc
- {{Rand|1000|2}} = 376
Template loop detected: Template:Rand/doc
- {{Rand|1000|1}} = 309
Template loop detected: Template:Rand/doc
- {{Rand|1000|0}} = 242
Template loop detected: Template:Rand/doc
- {{Rand|1000|1|17}} = 584
Template loop detected: Template:Rand/doc (varying the prime number)
- {{Rand|1000|1|19}} = 902
Template loop detected: Template:Rand/doc
- {{Rand|1000|1|23}} = 517
Template loop detected: Template:Rand/doc
- {{Rand|1000|1|29}} = 413
Template loop detected: Template:Rand/doc
- {{Rand|1000|1|31}} = 712
Template loop detected: Template:Rand/doc
- {{Rand|1000|1|37}} = 633
Template loop detected: Template:Rand/doc
- {{Rand|1000|1|41}} = 267
Template loop detected: Template:Rand/doc
- {{Rand|1000|1|43}} = 547
Template loop detected: Template:Rand/doc
- {{Rand|1000|1|47}} = 154
Template loop detected: Template:Rand/doc
- {{Rand|1000|1|51}} = 769
Template loop detected: Template:Rand/doc
- {{Rand|1000|1|53}} = 106
Template loop detected: Template:Rand/doc
- {{Rand|1000|1|59}} = 23
Template loop detected: Template:Rand/doc
- {{Rand|1000|1|61}} = 311
Template loop detected: Template:Rand/doc
- {{Rand|1000|1|67}} = 242
Template loop detected: Template:Rand/doc
- {{Rand|1000|1|71}} = 822
Template loop detected: Template:Rand/doc
- {{Rand|1000|1|73}} = 112
Template loop detected: Template:Rand/doc
- {{Rand|1000|1|79}} = 61
Template loop detected: Template:Rand/doc
- Note:
- Varying seed linearly generates numbers that generate a linear sequence on the same page, with equal cyclic steps;
- Varying prime (provided that they are odd prime numbers) generates pseudo-random that have independent random distribution.
- Note that when count is even (such as 100 by default, or 1000 in the examples above), the generated numbers (on the same page) are all odd or all even when you are varying the seed or prime, unless half of the calls use an even seed and the others used an odd seed. However, later invocations will still alternate odd and even numbers on output (this problem only occurs on the same page where multiple random numbers are invoked).
- On the same page, multiple invocations of this template with the same parameters will generate the same output value, so it is possible to create multiple links related to the same article.