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

NOMBRE

       rand, srand - generador de numeros pseudo-aleatorios

SINOPSIS

       #include <stdlib.h>

       int rand(void);

       void srand(unsigned int semilla);

DESCRIPCI'ON

       La  funcion  rand()  devuelve  un  entero  pseudo-aleatorio  entre  0 y
       RAND_MAX.

       La funcion srand() establece su argumento como la semilla de una  nueva
       serie  de enteros seudo-aleatorios que seran devueltos en secuencia por
       rand().  Estas secuencias son repetibles si se llama a srand()  con  el
       mismo valor para semilla.

       Si  no se proporciona ningun valor para la semilla (i.e., no se llama a
       srand()), la funcion rand() automaticamente coge el  valor  1  para  la
       semilla.

VALOR DEVUELTO

       La  funcion  rand()  devuelve  un valor entre 0 y RAND_MAX.  La funcion
       srand() no devuelve nada.

OBSERVACIONES

       Las versiones de rand() y srand()  de  la  Biblioteca  de  C  de  Linux
       emplean  el  mismo  generador  de  numeros  aleatorios  que  random() y
       srandom(), de modo que los bits de orden  mas  bajo  deberian  ser  tan
       aleatorios   como   los   de   orden   mas   alto.    Sin  embargo,  en
       implementaciones de rand() mas antiguas, los bits de mas bajo orden son
       mucho menos aleatorios que los de orden mas alto.

       En  Numerical Recipes in C: The Art of Scientific Computing (William H.
       Press, Brian P. Flannery, Saul A. Teukolsky, William T. Vetterling; New
       York: Cambridge University Press, 1990 (2a ed, pag. 277)), se hacen los
       siguientes comentarios:
              "Si Ud. quiere generar un entero aleatorio entre 1 y 10, siempre
              deberia hacerlo usando los bits de orden alto como en:

                     j=1+(int) (10.0*rand()/(RAND_MAX+1.0));

              y nunca con algo parecido a esto:

                     j=1+(rand() % 10);

              (que utiliza bits de mas bajo orden)."

       La  generacion  de  numeros  aleatorios  es  un tema complejo. El libro
       Numerical Recipes in C (ver la  referencia  anterior)  proporciona  una
       excelente  discusion sobre la generacion practica de numeros aleatorios
       en el capitulo 7 (Numeros Aleatorios).

       Para una discusion mas teorica que tambien cubra en  profundidad  otros
       detalles   practicos,   por  favor  consulte  el  capitulo  3  (Numeros
       Aleatorios) en el  libro  de  Donald  E.  Knuth  The  Art  of  Computer
       Programming,  volumen  2  (Seminumerical  Algorithms), 2a ed.; Reading,
       Massachusetts: Addison-Wesley Publishing Company, 1981.

CONFORME A

       SVID 3, BSD 4.3, ISO 9899

V'EASE TAMBI'EN

       random(3), srandom(3), initstate(3), setstate(3)