Rnd-Funktion

Gibt eine Zufallszahl zurück.

Syntax

Rnd[(number)]

Anmerkungen

Das Argument "number" kann ein beliebiger gültiger numerischer Ausdruck sein.

Die Rnd-Funktion gibt einen Wert kleiner als 1, aber größer/gleich 0 zurück. Der Wert der Zahl bestimmt, wie Rnd eine Zufallszahl generiert:

Tabelle 11-13 Rückgabewerte der Rnd-Funktion

Zahl ist Von Rnd generiertes Ergebnis
Kleiner als null Jedes Mal die gleiche Zahl, mit "number" als Seeding-Wert
Größer als null Die nächste Zufallszahl in der Sequenz
Gleich null Die zuletzt generierte Zahl
Nicht angegeben Die nächste Zufallszahl in der Sequenz

Für jeden angegebenen anfänglichen Seeding-Wert wird dieselbe Zahlenfolge generiert, da jeder aufeinander folgende Aufruf der Rnd-Funktion die vorherige Zahl als Seeding-Wert für die nächste Zahl in der Sequenz verwendet.

Bevor Sie Rnd aufrufen, verwenden Sie die Randomize-Anweisung ohne ein Argument, um den Zufallszahlengenerator mit einem Seeding-Wert basierend auf dem Systemtimer zu initialisieren.

Um zufällige Ganzzahlen in einem bestimmten Bereich zu erzeugen, verwenden Sie folgende Formel:

Int((upperbound - lowerbound + 1) * Rnd + lowerbound)

Hier ist "upperbound" die höchste Zahl im Bereich und "lowerbound" die niedrigste Zahl im Bereich.

Hinweis:

Um Sequenzen von Zufallszahlen zu wiederholen, rufen Sie Rnd mit einem negativen Argument auf, direkt bevor Sie Randomize mit einem numerischen Argument verwenden. Bei Verwendung von Randomize mit demselben Wert für "number" wird nicht die vorherige Sequenz wiederholt.

Die folgenden Beispiele veranschaulichen, wie die Rnd-Funktionen Zufallszahlen zurückgeben:

Beispiel 1:

Dim randomNumber
Randomize  ' Initialize random-number generator
randomNumber = Rnd
'Output: random number between 0 and 1

Beispiel 2:

Dim randomNumber
Randomize  ' Initialize random-number generator
randomNumber = Rnd(-1)  ' Use -1 as the seed
'Output: the same random number each time

Beispiel 3:

Dim randomNumber
Randomize  ' Initialize random-number generator
randomNumber = Rnd  ' Generate the first random number
'Output: the first random number
randomNumber = Rnd  ' Generate the next random number
'Output: the next random number

Beispiel 4:

Dim randomNumber
Randomize ' Initialize random-number generator
randomNumber = Rnd(0)  ' Generate a random number and store it
'Output: the most recently generated random number

Beispiel 5:

Dim lowerbound, upperbound, randomNumber
lowerbound = 1
upperbound = 10
Randomize  ' Initialize random-number generator
randomNumber = Int((upperbound - lowerbound + 1) * Rnd + lowerbound)
'Output: a random integer between 1 and 10