>>-RANDOM--(--+----------------------------------+--)---------->< +-max------------------------------+ '-+-min--,-+--+-----+--+---------+-' '-,------' '-max-' '-,--seed-'
returns a quasi-random nonnegative whole number in the range min to max inclusive. If you specify max or min or both, max minus min cannot exceed 100000. The min and max default to 0 and 999, respectively. To start a repeatable sequence of results, use a specific seed as the third argument, as described in Note 1. This seed must be a positive whole number ranging from 0 to 999999999.
RANDOM() -> 305
RANDOM(5,8) -> 7
RANDOM(2) -> 0 /* 0 to 2 */
RANDOM(,,1983) -> 123 /* reproducible */
sequence = RANDOM(1,6,12345) /* any number would */
/* do for a seed */
do 39
sequence = sequence RANDOM(1,6)
end
say sequence
The numbers are generated mathematically, using
the initial seed, so that as far as possible they appear
to be random. Running the program again produces the same sequence;
using a different initial seed almost certainly produces
a different sequence. If you do not supply a seed, the first
time RANDOM is called, the microsecond field of the time-of-day clock
is used as the seed; and hence your program almost always
gives different results each time it is run.