Skip to content

Instantly share code, notes, and snippets.

@vndee
Created November 1, 2024 13:21
Show Gist options
  • Save vndee/67d993597a2474e5b49fc194fa18063b to your computer and use it in GitHub Desktop.
Save vndee/67d993597a2474e5b49fc194fa18063b to your computer and use it in GitHub Desktop.
class SimpleRandomGenerator:
def __init__(self, seed):
self.state = seed
def next(self):
# Magic numbers that make our randomness look good
a = 1664525
c = 1013904223
m = 2**32
# Mix everything together
self.state = (a * self.state + c) % m
return self.state
# Let's try it out!
rng = SimpleRandomGenerator(seed=42)
print([rng.next() for _ in range(5)])
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment