Main Content

Zufallszahlen in einem bestimmten Bereich

Dieses Beispiel zeigt, wie Sie ein Array zufälliger Gleitkommazahlen aus einer gleichmäßigen Verteilung in einem offenen Intervall (50, 100) erstellen können.

Standardmäßig gibt rand normalisierte Werte (von 0 bis 1) aus einer gleichmäßigen Verteilung aus. Um den Bereich der Verteilung auf einen neuen Bereich (a, b) zu ändern, multiplizieren Sie jeden Wert mit der Breite des neuen Bereichs (b - a) und verschieben Sie daraufhin jeden Wert um a.

Initialisieren Sie zunächst den Zufallszahlengenerator, um die Ergebnisse in diesem Beispiel wiederholbar zu machen.

rng(0,'twister');

Erstellen Sie einen Vektor aus 1000 Zufallswerten. Verwenden Sie die Funktion rand, um die Werte aus einer gleichmäßigen Verteilung in einem offenen Intervall (50,100) abzurufen.

a = 50;
b = 100;
r = (b-a).*rand(1000,1) + a;

Verifizieren Sie, ob die Werte in r im angegebenen Bereich liegen.

r_range = [min(r) max(r)]
r_range =

   50.0261   99.9746

Das Ergebnis befindet sich im offenen Intervall (50,100).

Hinweis

Einige Kombinationen von a und b ermöglichen es theoretisch, dass Ihre Ergebnisse a oder b enthalten könnten. In der Praxis ist dies jedoch sehr unwahrscheinlich.

Siehe auch

Verwandte Themen