Provided by: manpages-es-dev_4.13-4_all bug

NOMBRE

       random, srandom, initstate, setstate - generador de números aleatorios

SINOPSIS

       #include <stdlib.h>

       long random(void);

       void srandom(unsigned seed);

       char *initstate(unsigned seed, char *state, size_t n);

       char *setstate(char *state);

   Requisitos de Macros de Prueba de Características para glibc (véase feature_test_macros(7)):

       random(), srandom(), initstate(), setstate():
           _XOPEN_SOURCE >= 500
               || /* Glibc since 2.19: */ _DEFAULT_SOURCE
               || /* Glibc versions <= 2.19: */ _SVID_SOURCE || _BSD_SOURCE

DESCRIPCIÓN

       La  función  random()  emplea  un generador no lineal aditivo con retroalimentación de números aleatorios
       utilizando una tabla  predeterminada  de  31  enteros  largos  para  devolver  números  pseudo-aleatorios
       sucesivos en el rango de 0 a 2^31 - 1.  El periodo de este generador de números aleatorios es muy grande,
       aproximadamente 16 * ((2^31) - 1).

       La  función  srandom()  establece  su  argumento  como  la  semilla  de  una  nueva  secuencia de enteros
       seudo-aleatorios que serán 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 función random() automáticamente asume una semilla de valor 1.

       The initstate()  function allows a state array state to be initialized for use by random().  The size  of
       the state array n is used by initstate()  to decide how sophisticated a random number generator it should
       use—the  larger the state array, the better the random numbers will be.  Current "optimal" values for the
       size of the state array n are 8, 32, 64, 128, and 256 bytes; other amounts will be rounded  down  to  the
       nearest  known  amount.   Using  less  than  8  bytes  results  in  an  error.   seed is the seed for the
       initialization, which specifies a starting point  for  the  random  number  sequence,  and  provides  for
       restarting at the same point.

       La  función  setstate()  cambia  el vector de estado usado por la función random().  El vector de estado,
       estado, se usa para la generación de números 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

       The random()  function returns a value between 0 and (2^31) - 1.   The  srandom()   function  returns  no
       value.

       The  initstate()   function  returns  a  pointer  to the previous state array.  On error, errno is set to
       indicate the cause.

       On success, setstate()  returns a pointer to the previous state array.  On error, it returns  NULL,  with
       errno set to indicate the cause of the error.

ERRORES

       EINVAL The state argument given to setstate()  was NULL.

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

ATRIBUTOS

       Para obtener una explicación de los términos usados en esta sección, véase attributes(7).
       ┌─────────────────────────┬────────────────────┬───────────────────┐
       │ InterfazAtributoValor             │
       ├─────────────────────────┼────────────────────┼───────────────────┤
       │ random(), srandom(),    │ Seguridad del hilo │ Multi-hilo seguro │
       │ initstate(), setstate() │                    │                   │
       └─────────────────────────┴────────────────────┴───────────────────┘

CONFORME A

       POSIX.1-2001, POSIX.1-2008, 4.3BSD.

NOTAS

       The  random()   function  should  not  be  used  in multithreaded programs where reproducible behavior is
       required.  Use random_r(3)  for that purpose.

       Random-number generation is a complex topic.  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, 2007, 3rd ed.)  provides an excellent discussion of practical random-number  generation
       issues in Chapter 7 (Random Numbers).

       For a more theoretical discussion which also covers many practical issues in depth, see Chapter 3 (Random
       Numbers)  in  Donald E. Knuth's The Art of Computer Programming, volume 2 (Seminumerical Algorithms), 2nd
       ed.; Reading, Massachusetts: Addison-Wesley Publishing Company, 1981.

ERRORES

       According to POSIX, initstate()  should return NULL on error.  In the glibc implementation, errno is  (as
       specified) set on error, but the function does not return NULL.

VÉASE TAMBIÉN

       getrandom(2), drand48(3), rand(3), random_r(3), srand(3)

COLOFÓN

       Esta página es parte de la versión 5.10 del proyecto Linux man-pages. Puede encontrar una descripción del
       proyecto,   información   sobre   cómo   informar   errores  y  la  última  versión  de  esta  página  en
       https://www.kernel.org/doc/man-pages/.

TRADUCCIÓN

       La  traducción  al  español  de  esta  página  del  manual  fue  creada  por  Gerardo  Aburruzaga  García
       <gerardo.aburruzaga@uca.es> y Miguel Pérez Ibars <mpi79470@alu.um.es>

       Esta  traducción  es  documentación  libre;  lea  la GNU General Public License Version 3 o posterior con
       respecto a las condiciones de copyright.  No existe NINGUNA RESPONSABILIDAD.

       Si encuentra algún error en la traducción de esta página  del  manual,  envíe  un  correo  electrónico  a
       debian-l10n-spanish@lists.debian.org.

GNU                                             1 Noviembre 2020                                       RANDOM(3)