Zitat:
Die durchschnittswerte waren bei beiden funktionen sehr nah an 0.5, also genau da wo sie sein sollten
Tja die Statistik mit den Durchschnittswerten !?
Nachfolgende Random Funktion ist sogar noch besser und schneller und liefert den Perfekten Durchschnitt von 0.5 !!
Delphi-Quellcode:
var
Counter: Byte = 0;
function BestRandom: Boolean;
begin
Result := Odd(Counter);
Inc(Counter);
end;
Schön, als Demonstration zeigt dies das zur Beurteilung eines Zufallsgenerators eben nicht nur eine Durchschnittsstatistik ausreicht.
Bei der grafischen Analyse der LCG Algorithmen == Delphi Random(), wird man feststellen das sich in den grafischen Bildern starke sich wiederholende Artefakte ergeben. D.h. LCG's sind keineswegs gute Zufallsgeneratoren, sie reichen gerademal für Statistische Berechnungen aus.
Im Gegensatz dazu würde obige RC4 basierte Funktion ein grafisches Bild ergeben das ein Weises Rauschen darstellt, also absolut keine Regelmäßigkeiten enthält.
Gruß Hagen