Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

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

AW: Zufallsgenerator

  Alt 7. Nov 2016, 15: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.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.

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