Funktionreferenz


Random

Beschreibung anzeigen in

Erzeugt eine pseudozufällige Fließkommazahl.

Random ( [Min = 0 [, Max = 1 [, Flag = 0]]] )

Parameter

Min [optional] Die kleinste zu erzeugende Zahl. Standard ist 0.
Max [optional] Die größte zu erzeugende Zahl. Standard ist 1.
Flag [optional] Wenn auf 1 gesetzt, wird eine Integerzahl zurückgegeben. Standard ist eine Fließkommazahl.

Rückgabewert

Erfolg: Eine Pseudozufallszahl zwischen Min und Max.
Fehler: Setzt das @error Flag auf ungleich null.

Bemerkungen

Wird nur ein Argument angegeben, so wird dieses als Max interpretiert.

Das Ergebnis liegt im Bereich von Min bis INKLUSIVE Max bei Verwendung von Integer (aber kleiner Max bei Verwendung von Fließkommazahlen).

Wenn Min und Max gleich groß, dann liefert Random() diesen Wert zurück. @error wird in diesem Fall nicht gesetzt.

Wenn Integer verwendet werden, so muss Max-Min kleiner als 2^31 sein.

Übersetzte Kommentare basierend auf der Originalquelle

Diese Funktion nutzt den"Mersenne Twister " Zufallszahlengenerator, MT19937, geschrieben von Takuji Nishimura, Makoto Matsumoto, Shawn Cokus, Matthe Bellew und Isaku Wada.

Der "Mersenne Twister" ist ein Algorithmus für das Generieren von Zufallszahlen. Er wurde in Anbetracht der Mängel verschiedener anderer Generatoren entwickelt. Der Zyklus, 219937-1, und der Verlauf der Gleichverteilung, 623 Dimensionen, sind hier weitaus größer. Ausserdem ist der Generator schnell. Er vermeidet Multiplikation und Division, und er profitiert von Cachespeichern und Pipelines. Weitere Informationen auf der Webseite der Entwickler unter http://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/emt.html

Copyright (C) 1997 - 2002, Makoto Matsumoto and Takuji Nishimura, All rights reserved.

Weitergabe und Gebrauch in Quell- und Binärform, mit oder ohne Modifikationen, sind unter Einhaltung der folgenden Bedingungen erlaubt:

1. Bei Weitergabe von Quellcode muss die obige Copyright Notiz, diese Liste der Bedingungen und der folgende Haftungsausschluss enthalten sein.

2. Bei Weitergabe in Binärform muss die obige Copyright Notiz, diese Liste der Bedingungen und der folgende Haftungsausschluss in der Dokumentation und/oder anderem Material, das bei der Weitergabe mitgeliefert wird, enthalten sein.

3. Die Namen der Mitwirkenden dürfen nicht genutzt werden, um Produkte zu empfehlen oder zu bewerben, die aus dieser Software abgeleitet wurden, ohne explizite, vorherige, schriftliche Erlaubnis.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS"AS IS " AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Verwandte Funktionen

Round, SRandom

Beispiel

Beispiel 1

#include <MsgBoxConstants.au3>

; Münze werfen
Example()

Func Example()
    If Random(0, 1, 1) Then ; Liefert einen Wert zwischen 0 und 1
        MsgBox($MB_SYSTEMMODAL, "", "Die Seite der Münze lautet: Kopf") ; Wenn der Randominteger 1 ist, wurde Kopf geworfen
    Else
        MsgBox($MB_SYSTEMMODAL, "", "Die Seite der Münze lautet: Zahl") ; Wenn der Randominteger 0 ist, wurde Zahl geworfen
    EndIf
EndFunc   ;==>Example

Beispiel 2

#include <MsgBoxConstants.au3>

; Wirft einen Würfel.

Example()

Func Example()
    MsgBox($MB_SYSTEMMODAL, "", "Der Würfel zeigt die Zahl " & Random(1, 6, 1) & ".") ; Gibt einen Integer zwischen 1 und 6 zurück.
EndFunc   ;==>Example

Beispiel 3

#include <MsgBoxConstants.au3>

; Erstellt einen Zufallstext.

Example()

Func Example()
    Local $sText = ""
    For $i = 1 To Random(5, 20, 1) ; Gibt einen Integer zwischen 5 und 20 zurück. Dieser Integer entspricht der Länge des Strings.
        $sText &= Chr(Random(65, 122, 1)) ; Gibt einen Integer zwischen 65 und 122 zurück. Dies entspricht den ASCII-Zeichen zwischen einen kleingeschriebenen a und großgeschriebenen Z.
    Next
    MsgBox($MB_SYSTEMMODAL, "", "Der Zufallsstring lautet: " & $sText) ; Zeigt den String.
EndFunc   ;==>Example