Linear congruential generator: Difference between revisions
Content added Content deleted
(In the task description, add the range of BSD and Microsoft rand_n, attempting to prohibit solutions like the F# code that yields numbers out of range.) |
No edit summary |
||
Line 283: | Line 283: | ||
rand_ms 10 |
rand_ms 10 |
||
38 7719 21238 2437 8855 11797 8365 32285 10450 30612</lang> |
38 7719 21238 2437 8855 11797 8365 32285 10450 30612</lang> |
||
=={{header|Liberty BASIC}}== |
|||
<lang lb> |
|||
'by default these are 0 |
|||
global BSDState |
|||
global MSState |
|||
for i = 1 to 10 |
|||
print randBSD() |
|||
next i |
|||
print |
|||
for i = 1 to 10 |
|||
print randMS() |
|||
next i |
|||
function randBSD() |
|||
randBSD = (1103515245 * BSDState + 12345) mod (2 ^ 31) |
|||
BSDState = randBSD |
|||
end function |
|||
function randMS() |
|||
MSState = (214013 * MSState + 2531011) mod (2 ^ 31) |
|||
randMS = int(MSState / 2 ^ 16) |
|||
end function |
|||
</lang> |
|||
=={{header|PARI/GP}}== |
=={{header|PARI/GP}}== |