Willekeurige (random) getallen zijn nodig in verschillende takken van de wetenschap. Bijvoorbeeld wiskunde (computationeel uitrekenen van integralen) of in de informatica om games te maken. Omdat echte willekeurige getallen tijdsintensief zijn om te maken (bv munt opgooien) is er manier om pseudo-willekeurige getallen te generen met een computer. En laat een computer nu net zeer snel zijn in repetetief werk.
Eén van die manieren is een lineaire-congruentiegenerator (LCG). Deze neemt een willekeurig getal (\(y_{i-1}\)) en 3 vaste variabelen \(a\), \(b\) en \(m\). Aan de hand van de LCG wordt een nieuw willekeurig getal gegenereerd. Dit is aan de hand van volgende formule:
\[y_i = (a * y_{i-1} + b) mod(m)\]>>> LCG1(2, 3, 5)
0
>>> LCG2(x, y)
7.3