Das einfachste dürfte die Programmierung eines linearen Kongruenzgenerators sein (
Random ist ein solcher):
y := (x*a + r) mod m
Dieser Code liefert eine Pseudozufallszahl zwischen 0 und m-1.
x ist die zuvor berechnete Pseudozufallszahl (wenns keine gibt, ist ein Startwert zwischen 0 und m-1 zu nehmen), y die neue Pseudozufallszahl. m sollte in dieser Gleichung die größte Zahl sein.
Für ein paar Pseudozufallszahlen zwischen 0 und 100 also zum Beispiel:
Delphi-Quellcode:
RandNum := 12;
for i := 0 to 15 do begin
RandNum := (RandNum*48 + 86) mod 101;
writeln(RandNum);
end;
Mehr zu Zufallszahlengeneratoren auf
Wikipedia.