Delphi-PRAXiS
Seite 2 von 3     12 3      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Zufallsgenerator (https://www.delphipraxis.net/73765-zufallsgenerator.html)

3_of_8 25. Jul 2006 20:01

Re: Zufallsgenerator
 
Du musst den Zufallszahlengenerator schon auch initialisieren...

joel93 25. Jul 2006 20:31

Re: Zufallsgenerator
 
:wiejetzt: ?

ManuMF 26. Jul 2006 13:18

Re: Zufallsgenerator
 
Der Zufallsgenerator ist nicht wirklich einer, sondern versucht möglichst zufällig eine Zahl auszugeben, das kann auf mehrere Arten gehen. Aber dazu muss z.B. in MainForm (meist Form1 ;-)).FormCreate der Befehl "randomize" geschrieben werden, der das ganze initialisiert. Sonst bekommst du immer die gleichen Werte ;-)

joel93 26. Jul 2006 13:57

Re: Zufallsgenerator
 
Ich fersteh zwar nicht warum ich die gleichen Werte haben soll (hab ich mähmlich nich!!!)? :warn:

3_of_8 26. Jul 2006 14:02

Re: Zufallsgenerator
 
Jedes mal beim Programmstart die gleichen.

joel93 26. Jul 2006 14:10

Re: Zufallsgenerator
 
Hab ich auch nich???!!!??? :wall:

joel93 26. Jul 2006 20:43

Re: Zufallsgenerator
 
Sorry, aber kommen hier keine Antworten???

DGL-luke 26. Jul 2006 20:52

Re: Zufallsgenerator
 
Ähm...

Delphi-Referenz durchsuchenRandomize; setzt die globale Variable Delphi-Referenz durchsuchenRandSeed auf die "Counts" (Delphi-Referenz durchsuchenQueryPerformanceCounter, ka was das genau für n Wert ist) seit Systemstart oder Millisekunden seit Systemstart (Delphi-Referenz durchsuchenGetTickCount), falls ersteres nicht verfügbar ist (false zurückgibt).

Random gibt dann "RandomEngine.Next" (weiter komme ich nicht in die Untiefen des VCL-Codes) zurück. Also "die nächste zufallszahl". Für jeden Wert von Randseed hast du eine eindeutige kette von aufeinanderfolgenden Zufallswerten, diese werden über sehr komplizierte Algorithmen ausgerechnet, so dass es "wie Zufall aussieht". negaH kann sich da differenzierter darüber auslassen (und er würde an der Delphi-Implenmentation kein gutes Haar lassen).

Somit sollte Randseed VOR dem aufruf von Randomize auf einem bestimmten Wert stehen, und du solltest somit immer die selben zufallszahlen erhalten.

SnuffMaster23 26. Jul 2006 21:22

Re: Zufallsgenerator
 
Zitat:

Zitat von DGL-luke
Somit sollte Randseed VOR dem aufruf von Randomize auf einem bestimmten Wert stehen

Wird RandSeed denn überhaupt initialisiert?
Vielleciht steht da auch was wirklich zufälliges drin...

Christian Seehase 26. Jul 2006 21:38

Re: Zufallsgenerator
 
Moin Lukas,

RandSeed steht vor dem Aufruf von Randomize auf 0 (zumindest in D7 und 2006).


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:28 Uhr.
Seite 2 von 3     12 3      

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz