Code Golf: MSM Random Number Generator
Posted
by Vivin Paliath
on Stack Overflow
See other posts from Stack Overflow
or by Vivin Paliath
Published on 2010-04-23T23:19:15Z
Indexed on
2010/04/23
23:23 UTC
Read the original article
Hit count: 600
code-golf
|rosetta-stone
|language-agnostic
|mean-square-method
|random-number-generator
The challenge
The shortest code by character count that will generate (pseudo)random numbers using the Middle-Square Method.
The Middle-Square Method of (pseudo)random number generation was first suggested by John Von Neumann in 1946 and is defined as follows:
Rn+1 = mid((Rn)2, m)
For example:
34562 = 11943936
mid(11943936) = 9439
94392 = 89094721
mid(89094721) = 0947
9472 = 896809
mid(896809) = 9680
96802 = 93702400
mid(93702400) = 7024
Test cases:
A seed of 8653 should give the following numbers (first 10):
8744, 4575, 9306, 6016, 1922, 6940, 1636, 6764, 7516, 4902
© Stack Overflow or respective owner