Provided by: manpages-de-dev_0.10-1_all bug

BEZEICHNUNG

       random, srandom, initstate, setstate - Zufallszahlengenerator.

       Diese  Handbuchseite ist eventuell veraltet. Im Zweifelsfall ziehen Sie
       die englischsprachige Handbuchseite zu Rate, indem Sie

              man -LC 3 random

       eingeben.

"UBERSICHT

       #include <stdlib.h>

       long int random(void);
       void srandom(unsigned int seed);
       char *initstate(unsigned int seed, char *state, int n);
       char *setstate(char *state);

BESCHREIBUNG

       Die random()-Funktion benutzt einen Zufallsgenerator mit nicht-linearem
       additiven  Feedback  mit  einer  vorgegebenen TabellengroBe von 31 long
       integers um aufeinanderfolgende Pseudozufallszahlen im Rahmen von 0 bis
       RAND_MAX zuruckzugeben.  Die Periode dieses Zufallszahlengenerators ist
       sehr groB, ungefahr 16*((2**31)-1).

       Die Funktion srandom() setzt ihr Argument als Ursprung  fur  eine  neue
       Folge  von  Pseudozufalls-Ganzzahlen,  welche  von  random()  geliefert
       werden.  Diese Folgen sind wiederholbar durch Aufruf von srandom()  mit
       dem  gleichen  Ursprungswert.   Wenn keine Ursprungswert angegeben wird
       random() automatisch mit dem Ursprungswert 1 gestartet.

       Die Funktion initstate() erlaubt es, ein  Zustandsfeld  state  fur  den
       Gebrauch   durch   random()   zu   initialisieren.   Die  GroBe  n  des
       Zustandsfeldes wird von initstate()  benutzt,  um  zu  entscheiden  wie
       differenziert  es ein Zufallszahlengenerator benutzen soll -- je groBer
       das  Zustandsfeld,  desto  besser  die  Zufallszahlen  seed   ist   der
       Ursprungswert  fur  die Initialisierung, welcher den Startpunkt fur den
       Zufallszahlenfolge angibt und  sicherstellt  zum  erneuten  Starten  am
       gleichen Punkt.

       Die  Funktion  setstate()  andert  das  Zustandsfeld,  welches  von der
       Funktion random()  benutzt  wird.   Das  Zustandsfeld  state  wird  zum
       Erzeugen   der  Zufallszahlen  benutzt  bis  zum  nachsten  Aufruf  von
       initstate() oder setstate().  state muss  zuerst  initialisiert  werden
       durch Benutzen von initstate().

R"UCKGABEWERT

       Die  Funktion random() liefert einen Wert zwischen 0 und RAND_MAX.  Die
       Funktion  srandom()  liefert  keinen  Wert  zuruck.    Die   Funktionen
       initstate()  und  setstate()  liefert  einen  Zeiger  auf das vorherige
       Zustandsfeld.

FEHLER

       EINVAL Ein Zustandsfeld von weniger als 8  Byte  wurde  an  initstate()
              ubergeben.

BEMERKUNGEN

       Aktuelle  "optimale"  Werte  fur die GroBe n des Zustandsfeldes sind 8,
       32, 64, 128 und 256  Byte;  andere  Werte  werden  abgerundet  auf  den
       nachsten  bekannten  Wert.   Verwendung  von weniger als 8 Byte erzeugt
       einen Fehler.

KONFORM ZU

       BSD 4.3

SIEHE AUCH

       rand(3), srand(3).