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.

ÜBERSICHT

       #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 Tabellengröße von 31 long
       integers um aufeinanderfolgende Pseudozufallszahlen im Rahmen von 0 bis
       RAND_MAX  zurückzugeben. Die Periode dieses Zufallszahlengenerators ist
       sehr groß, ungefähr 16*((2**31)-1).

       Die Funktion srandom() setzt ihr Argument als Ursprung  für  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  für  den
       Gebrauch   durch   random()   zu   initialisieren.   Die  Größe  n  des
       Zustandsfeldes wird von initstate()  benutzt,  um  zu  entscheiden  wie
       differenziert  es  ein Zufallszahlengenerator benutzen soll — je größer
       das  Zustandsfeld,  desto  besser  die  Zufallszahlen  seed   ist   der
       Ursprungswert  für  die Initialisierung, welcher den Startpunkt für den
       Zufallszahlenfolge angibt und  sicherstellt  zum  erneuten  Starten  am
       gleichen Punkt.

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

RÜCKGABEWERT

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

FEHLER

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

BEMERKUNGEN

       Aktuelle  "optimale"  Werte  für die Größe n des Zustandsfeldes sind 8,
       32, 64, 128 und 256  Byte;  andere  Werte  werden  abgerundet  auf  den
       nächsten  bekannten  Wert.  Verwendung  von  weniger als 8 Byte erzeugt
       einen Fehler.

KONFORM ZU

       BSD 4.3

SIEHE AUCH

       rand(3), srand(3).