New (RandomNumberGenerator constructor): Difference between revisions
Jump to navigation
Jump to search
mNo edit summary |
mNo edit summary |
||
Line 22: | Line 22: | ||
%rand = new([Seed=seed] [, Salt=salt]) | %rand = new([Seed=seed] [, Salt=salt]) | ||
===Syntax terms=== | ===Syntax terms=== | ||
< | <table class="syntaxTable"> | ||
< | <tr><th><i>%rand</i></th> | ||
< | <td>A RandomNumberGenerator object variable. </td></tr> | ||
< | <tr><th><b>Seed=</b><i>seed</i></th> | ||
< | <td>An optional, name required, argument that lets you specify a “seed” for the random number generator. If you provide no seed, the method generates a new, “random,” starting value for the random number generator, which produces an unpredictable random number result. | ||
for the random number generator. | ''seed'' is a string or a longstring. </td></tr> | ||
If you provide no seed, the method generates a new, “random,” starting value | <tr><th><b>Salt=</b><i>salt</i></th> | ||
for the random number generator, which produces an unpredictable random number result. | <td>An optional, name required, argument that lets you specify a “salt” for the random number generator. A salt is additional data to be used (along with the explicit or default seed) to improve the randomness of the random generator's initial value. | ||
''salt'' is a string or a longstring.</td></tr> | |||
''seed'' is a string or a longstring. | </table> | ||
< | |||
< | |||
for the random number generator. | |||
A salt is additional data to be used (along with the explicit or default seed) to | |||
improve the randomness of the random generator's initial value. | |||
''salt'' is a string or a longstring. | |||
</ | |||
===Usage Notes=== | ===Usage Notes=== |
Revision as of 19:49, 6 February 2011
Create a random number object
New is a member of the RandomNumberGenerator class.
The New method creates a random number. The kind of random number depends on the parameters specified when New is invoked:
- If no parameters are specified, New returns an unpredictable random number each time it is called.
- If a Salt parameter is specified, New returns an unpredictable random number that is based on initial input that has an extra degree of randomness.
- If only a Seed parameter is specified, New returns the next number in a specific series of pseudo-random numbers. Subsequent identical calls produce the next items in the series; recreating or resetting the object with the same seed lets you reproduce the series.
Syntax
%rand = new([Seed=seed] [, Salt=salt])
Syntax terms
%rand | A RandomNumberGenerator object variable. |
---|---|
Seed=seed | An optional, name required, argument that lets you specify a “seed” for the random number generator. If you provide no seed, the method generates a new, “random,” starting value for the random number generator, which produces an unpredictable random number result. seed is a string or a longstring. |
Salt=salt | An optional, name required, argument that lets you specify a “salt” for the random number generator. A salt is additional data to be used (along with the explicit or default seed) to improve the randomness of the random generator's initial value. salt is a string or a longstring. |
Usage Notes
- If no Seed argument is specified, the New method generates a random seed (based on multiple, internal system data like STCK value, frequently-changed parts of memory, and so on).
- If you want to increase the randomness of the initial value passed to the random number generator, but you don't want a reproducible sequence, you can pass additional data to be used to generate the random starting value, maybe from something a user types in. This additional value is called a salt.
- Since the likely use of explicitly specifying a seed is to produce a reproducible random sequence, there is probably not much reason to specify both a salt and a seed, which would nullify reproducibility.
- For an example of the New method, see the RandomNumberGenerator class page.