Anweisung Randomize
Initialisiert den Zufallszahlgenerator, der von der Funktion Rnd verwendet wird.
Syntax:
Randomize [Zahl]
Parameter:
Zahl: Eine ganze Zahl. Wird als Startwert zum Initialisieren des Zufallszahlgenerators verwendet. Gleiche Startwerte führen zu gleichen Zufallszahlsequenzen durch die Funktion Rnd. Falls der Parameter weggelassen wird, wird die Anweisung Randomize ignoriert.
Außer für eine reproduzierbare Zahlenfolge besteht keine Notwendigkeit, die Anweisung Randomize zu verwenden, da der Zufallszahlgenerator automatisch beim ersten Aufruf initialisiert wird – er wird durch einen vom System gelieferten Zufallszahlgenerator gestartet, der gleichmäßig verteilte, nichtdeterministische Zufallszahlen erzeugt. Falls solch ein Generator im System nicht verfügbar ist, wird die Systemzeit als Startwert verwendet.
Die Anweisung Randomize beeinflusst nur die Funktion Rnd von BASIC. Andere Zufallszahlgeneratoren (beispielsweise die Funktion ZUFALLSZAHL() in Calc und so weiter) sind davon nicht betroffen.
Beispiel:
Sub ExampleRandomize
Dim iCount As Integer, iVar As Integer, sText As String
Dim iSpectral(10) As Integer
Randomize 2^14-1
For iCount = 1 To 1000
iVar = Int(10 * Rnd) ' Bereich von 0 bis 9
iSpectral(iVar) = iSpectral(iVar) +1
Next iCount
sText = " | "
For iCount = 0 To 9
sText = sText & iSpectral(iCount) & " | "
Next iCount
MsgBox sText,0,"Spektrale Verteilung"
End Sub