Provided by: manpages-fr_1.67.0-1_all bug

NOM

       random,   srandom,   initstate,   setstate   -  Générateur  de  nombres
       aléatoires.

SYNOPSIS

       #include <stdlib.h>

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

DESCRIPTION

       La fonction random() utilise une fonction non-linéaire  pour  engendrer
       des  nombres  pseudo-aléatoires  entre 0 et RAND_MAX.  La période de ce
       générateur est très grande, approximativement 16*((2**31)-1).

       La fonction  srandom()  utilise  son  argument  comme  « graine »  pour
       engendrer  une nouvelle séquence de nombre pseudo-aléatoires qui seront
       fournis lors des appels à random().  Ces séquences sont  reproductibles
       en  invoquant  srandom()  avec  la  même graine. Si aucune graine n’est
       fournie,  La  fonction  random()  utilise  automatiquement  une  graine
       originale de valeur 1.

       La  fonction  initstate()  permet d’initialiser une table d’états state
       pour l’utiliser avec random().  La taille n de la  table  est  utilisée
       par   initstate()  pour  déterminer  le  niveau  de  sophistication  du
       générateur de nombre aléatoires.  Plus  grande  est  la  table  d’état,
       meilleurs  seront  les nombres aléatoires.  seed est la graine utilisée
       pour l’initialisation, indiquant un point de départ pour la séquence de
       nombres, et permet de redémarrer au même endroit.

       La  fonction  setstate()  modifie  la  table  d’états  utilisée  par la
       fonction random(). La table  d’état  state  est  alors  utilisée  comme
       générateur de nombres aléatoires jusqu’au prochain appel de initstate()
       ou setstate().  state doit d’abord être initialisée avec initstate() ou
       être le résultat d’un appel précédent à setstate()

VALEUR RENVOYÉE

       La  fonction  random()  renvoie  une  valeur  entre  0 et RAND_MAX.  La
       fonction srandom() ne renvoie pas de valeur. Les fonctions  initstate()
       et setstate() renvoient un pointeur sur la table d’états précédente, ou
       NULL en cas d’erreur.

ERREURS

       EINVAL Une table d’états plus courte que  8  octets  a  été  fournie  à
              initstate().

NOTES

       Actuellement,  les  valeurs  optimales  n,  pour  la taille de la table
       d’états sont 8, 32, 64, 128, et 256 octets. Les autres  valeurs  seront
       arrondies  à  la  taille  la plus proche. Essayer d’utiliser moins de 8
       octets déclenche une erreur.

CONFORMITÉ

       BSD 4.3

VOIR AUSSI

       rand(3), srand(3)

TRADUCTION

       Christophe Blaess, 1996-2003.