C-Programmierung
Zufallszahlengenerator
← Zufallszahlen | ● | Zeitmessung →
In der Praxis werden Zahlengeneratoren mit besseren stochastischen Eigenschaften als der lineare Kongruenz-Generator verwendet, wie zum Beispiel der Zufallszahlengenerator rand()
der Standardbibliothek:
#include <stdlib.h> /* include standard library header */
unsigned int z1,z2;
srand(0); /* set seed */
z1=rand(); /* get random number */
z2=rand(); /* get another one */
...
unsigned int z1,z2;
srand(0); /* set seed */
z1=rand(); /* get random number */
z2=rand(); /* get another one */
...
Dies generiert eine Reihe von Zufallszahlen im Bereich von zi∈[0..2b−1],b≥15. Die Periode ist mindestens 232.
Beispiel für Zufallszahlen im Bereich [0..m−1]:
z=rand()%m;
Beispiel für normierte Zufallszahlen im Bereich [0..1]:
double x=(double)rand()/RAND_MAX;
Augenzahl eines Würfels:
pips=rand()%6+1;
← Zufallszahlen | ● | Zeitmessung →