UpdateSeed (RandomNumberGenerator subroutine): Difference between revisions
Jump to navigation
Jump to search
mNo edit summary |
mNo edit summary |
||
| Line 13: | Line 13: | ||
%rand:UpdateSeed([Seed=seed] [, Salt=salt]) | %rand:UpdateSeed([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. | ||
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. | <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. | |||
</ | |||
===Examples=== | ===Examples=== | ||
Revision as of 19:49, 6 February 2011
Reset random number object using specified Seed an
UpdateSeed is a member of the RandomNumberGenerator class.
This method sets a random number object to the number that would be created by the New constructor with the given Seed and Salt specifications.
Syntax
%rand:UpdateSeed([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. 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. |
Examples
In the following request, calling updateSeed enables the production of a second series of three values of %rand that matches the initial series of three values of %rand:
begin
%i is float
%rand is object RandomNumberGenerator
%rand = new(seed='help')
for %i from 1 to 3
printtext {~} = {%rand:value}
end for
%rand:updateSeed(seed='help')
for %i from 1 to 3
printtext {~} = {%rand:value}
end for
end
The result is:
%rand:value = 816969049
%rand:value = -148817379
%rand:value = 895846046
%rand:value = 816969049
%rand:value = -148817379
%rand:value = 895846046
If instead the random number is created with a salt, as in the following fragment, an updateSeed call using the salt produces a unique series of three values (salted numbers are not reproducible):
...
%rand = new(salt='iou')
for %i from 1 to 3
printtext {~} = {%rand:value}
end for
%rand:updateSeed(salt='iou')
for %i from 1 to 3
printtext {~} = {%rand:value}
end for
A sample result is:
%rand:value = 320947512
%rand:value = 535019615
%rand:value = -526589924
%rand:value = 387949238
%rand:value = 413468100
%rand:value = -807607538