Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.150 Beiträge
 
Delphi 12 Athens
 
#9

AW: Zufallsgenerator

  Alt 7. Nov 2016, 14:11
Schau mal in die OH.

Bei Delphi-Referenz durchsuchenRandom und Delphi-Referenz durchsuchenRandomize wird z.B. auch Delphi-Referenz durchsuchenRandSeed verlinkt sein.

RandSeed ist der Initialwert des Generators (bzw. daraus wird der nächste Zufallswert "berechnet")
und Randomize nimmt "aktuell" im Windows die Laufzeit des Systems (früher mal GetTickCount und derzeit QueryPerformanceCounter, weil es zuviele Idioten gab, die Randomize viel zu oft aufgerufen haben und sich dann wunderten, dass ständig der selbe Wert rauskommt)

Delphi-Quellcode:
// Was die Trotel praktisch immer gemacht hatten und da GetTickCount da oft genug den selben Wert liefer, kam auch mehrmals das Selbe bei Random raus
for i := 0 do 1000 do begin
  Randomize;
  MachWasMit(Random);
end;

Man kann also mit Random und dem selben Startwert "aktuell" immer wieder die selben Zahlenfolgen erzeugen,
aber wer denkt das sei immer so, der hat es verdient, wenn es knallt, sollte Emba irgendwann mal etwas am internen Generator ändern.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu ( 7. Nov 2016 um 14:15 Uhr)
  Mit Zitat antworten Zitat