Provided by: manpages-es_1.55-10_all bug

NOMBRE

       random, srandom, initstate, setstate - generador de numeros aleatorios.

SINOPSIS

       #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);

DESCRIPCI'ON

       La   funcion  random()  emplea  un  generador  no  lineal  aditivo  con
       retroalimentacion  de   numeros   aleatorios   utilizando   una   tabla
       predeterminada  de  31  enteros  largos  para  devolver numeros pseudo-
       aleatorios sucesivos en el rango de 0 a RAND_MAX.  El periodo  de  este
       generador   de   numeros  aleatorios  es  muy  grande,  aproximadamente
       16*((2**31)-1).

       La funcion srandom() establece su argumento  como  la  semilla  de  una
       nueva  secuencia  de  enteros  seudo-aleatorios que seran devueltos por
       random() en secuencia.  Estas secuencias son repetibles si se  llama  a
       srandom()  con  el  mismo  valor  para la semilla. Si no se proporciona
       ninguna semilla, porque no se llama a srandom(),  la  funcion  random()
       automaticamente asume una semilla de valor 1.

       La funcion initstate() permite inicializar un vector de estado, estado,
       para el uso por parte de random().  El tamano del vector de estado,  n,
       es  usado  por  initstate()  para  decidir cuan sofisticado debe ser el
       generador de numeros aleatorios que deberia usar: cuanto mas grande sea
       el  vector  de  estado,  mas aleatorios seran los numeros. El argumento
       semilla es la semilla para la inicializacion, que especifica  un  punto
       de  arranque  para  la  secuencia de numeros aleatorios, y hace posible
       recomenzar en el mismo punto.

       La funcion setstate() cambia el vector de estado usado por  la  funcion
       random().   El  vector  de estado, estado, se usa para la generacion de
       numeros  aleatorios  hasta  la  siguiente  llamada  a   initstate()   o
       setstate().   El  argumento estado debe haber sido inicializado primero
       mediante initstate() o  ser  el  resultado  de  una  llamada  previa  a
       setstate().

VALOR DEVUELTO

       La  funcion  random() devuelve un valor entre 0 y RAND_MAX.  La funcion
       srandom() no devuelve nada.  Las  funciones  initstate()  y  setstate()
       devuelven  un  puntero  al vector de estado anterior, o NULL en caso de
       error.

ERRORES

       EINVAL Se ha especificado un vector de estado de menos de 8 bytes  para
              initstate().

OBSERVACIONES

       Los  valores actuales "optimos" para el tamano del vector de estado, n,
       son 8, 32, 64, 128, y 256 bytes; otras cantidades seran redondeadas por
       abajo hasta la cantidad conocida mas cercana. Utilizar menos de 8 bytes
       producira un error.

CONFORME A

       BSD 4.3

V'EASE TAMBI'EN

       rand(3), srand(3)