RND

FreeBASIC-Referenz » Alphabetische Befehlsreferenz » R » RND

Syntax: RND [(Wiederholung)]
Typ: Funktion
Kategorie: Mathematik

RND gibt eine zufällige DOUBLE-Zahl zwischen 0 und 1 (im Intervall [0; 1[) zurück, abhängig von der mit RANDOMIZE gesetzten Startzahl. Wird kein RANDOMIZE verwendet, dann liefert RND bei jedem Programmstart dieselbe Folge an Zufallszahlen.

'Wiederholung' ist ein optionaler Parameter, der entweder gleich oder ungleich null ist. Wenn er gleich null ist, wird immer dieselbe Zufallszahl ausgegeben; ist er ungleich null oder wird er ausgelassen, dann wird die nächste Zufallszahl der Liste ausgegeben.

Beispiel:

RANDOMIZE TIMER

PRINT "Ausgabe von 3 Zufallszahlen von 1 bis 6"
FOR i AS INTEGER = 1 TO 3
   PRINT INT(RND * 6) + 1
NEXT
SLEEP

Erklärung zum Beispiel:
Mit RND*6 wird eine zufällige Gleitkommazahl zwischen 0 und 6 erzeugt und mit INT abgerundet. Dadurch entsteht eine zufällige ganze Zahl von 0 bis 5. Durch Addition von 1 erhält man eine Zufallszahl von 1 bis 6.

Unterschiede zu QB:
In allen Dialektformen außer -lang qb unterscheidet das optionale Argument nur zwischen null und ungleich null; der in QB verfügbare RND-Reset RND(-1) ist damit unmöglich. Stattdessen muss der Zufallsgenerator mit RANDOMIZE zurückgesetzt werden.

Unterschiede unter den FB-Dialektformen:
Der Standard-Algorithmus zur Erzeugung der Zufallzahlen hängt von der verwendeten Dialektform ab. Siehe dazu RANDOMIZE.

Siehe auch:
RANDOMIZE

Weitere Informationen:
Tutorial: Zufallszahlen verwenden