Provided by: manpages-pt-br-dev_4.18.1-1_all bug

NOME

       drand48,  erand48,  lrand48,  nrand48,  mrand48,  jrand48, srand48, seed48, lcong48 - gera
       números pseudo-randômicos distribuidos uniformemente

BIBLIOTECA

       Biblioteca C Padrão (libc, -lc)

SINOPSE

       #include <stdlib.h>

       double drand48(void);
       double erand48(unsigned short xsubi[3]);

       long lrand48(void);
       long nrand48(unsigned short xsubi[3]);

       long mrand48(void);
       long jrand48(unsigned short xsubi[3]);

       void srand48(long seedval);
       unsigned short *seed48(unsigned short seed16v[3]);
       void lcong48(unsigned short param[7]);

   Requisitos de macro de teste de recursos para o glibc (consulte feature_test_macros(7)):

       Todas as funções mostradas acima:
           _XOPEN_SOURCE
               || /* glibc >= 2.19: */ _DEFAULT_SOURCE
               || /* glibc <= 2.19: */ _SVID_SOURCE

DESCRIÇÃO

       Essas funções geram números pseudo-randômicos usando o algoritmo de congruência  linear  e
       aritmética inteira de 48-bit.

       The drand48()  and erand48()  functions return nonnegative double-precision floating-point
       values uniformly distributed over the interval [0.0, 1.0).

       The lrand48()   and  nrand48()   functions  return  nonnegative  long  integers  uniformly
       distributed over the interval [0, 2^31).

       The  mrand48()  and jrand48()  functions return signed long integers uniformly distributed
       over the interval [-2^31, 2^31).

       As funções srand48(), seed48() e lcong48() são funções de inicialização, as quais deve ser
       chamadas  antes  do  uso  de  drand48(),  lrand48()  ou  mrand49().  As funções erand48(),
       nrand48() e jrand48() não requerem a chamada da função de inicialização primeiro.

       Todas as funções trabalham gerando uma sequencia de inteiros 48-bit, Xi, de acordo  com  a
       formula de congruência linear:

           Xn+1 = (aXn + c) mod m, onde n >= 0

       O  parâmetro m = 2^48, portanto uma aritmética de inteiro 48-bit é realizada.A não ser que
       lcong48() seja chamada, a e c são obtidos por:

           a = 0x5DEECE66D
           c = 0xB

       O valor retornado por qualquer uma das funções drand48(), erand48(), lrand48(), nrand48(),
       mrand48()  ou  jrand48()  é  computado  para  primeira  geração  do  próximo  48-bit Xi na
       sequência. Então, o número apropriado de bits, de acordo com o tipo de item de dado a  ser
       retornado, é copiado dos bits de mais alta ordem de Xi e transformado no valor retornado.

       As  funções  drand48(),  lrand48()  e  mrand48() armazenam o último 48-bit Xi gerado em um
       buffer interno. As funções erand48(),  nrand48()  e  jrand48()  requerem  que  o  programa
       chamador  providencie  armazenamento  para  os valores sucessivos de Xi no argumento vetor
       xsubi. As funções são inicializadas pela colocação do valor inicial de Xi no  vetor  antes
       da primeira chamada as funções.

       A  função  de  inicialização  srand48()  ajusta os 32-bits de mais alta ordem de Xi para o
       argumento seedval. Os 16-bits de mais baixa ordem são  ajustados  arbitrariamente  para  o
       valor 0x330E.

       A  função de inicialização seed48() seta o valor de Xi para o valor 48-bit especificado no
       argumento vetor seed16v. O valor anterior de Xi é  copiado  em  um  buffer  interno  e  um
       ponteiro para esse buffer é retornado por seed48().

       A  função  de inicialização lcong48() permite ao usuário especificar valores iniciais para
       Xi, a e c. O elemento param[0-2] do argumento vetor especifica Xi,  param[3-5]  especifica
       a,  e  param[6]  especifica  c.  Após  a  chamada  de lcong48(), uma chamada subsequente a
       srand48() ou seed48() irá restaurar os valores padrão de a e c.

ATRIBUTOS

       Para uma explicação dos termos usados nesta seção, consulte attributes(7).

       ┌────────────────────────────────────────────────┬───────────────┬────────────────────────┐
       │InterfaceAtributoValor                  │
       ├────────────────────────────────────────────────┼───────────────┼────────────────────────┤
       │drand48(), erand48(), lrand48(), nrand48(),     │ Thread safety │ MT-Unsafe race:drand48 │
       │mrand48(), jrand48(), srand48(), seed48(),      │               │                        │
       │lcong48()                                       │               │                        │
       └────────────────────────────────────────────────┴───────────────┴────────────────────────┘

       The above functions record global state information for the random  number  generator,  so
       they are not thread-safe.

PADRÕES

       POSIX.1-2001, POSIX.1-2008, SVr4.

VEJA TAMBÉM

       rand(3), random(3)

TRADUÇÃO

       A  tradução  para português brasileiro desta página man foi criada por Marcelo D. Beckmann
       <marcelobeckmann@yahoo.com> e André Luiz Fassone <lonely_wolf@ig.com.br>

       Esta tradução é uma documentação  livre;  leia  a  Licença  Pública  Geral  GNU  Versão  3
       ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩  ou  posterior  para  as condições de direitos
       autorais.  Nenhuma responsabilidade é aceita.

       Se você encontrar algum erro na tradução desta página de manual, envie um  e-mail  para  a
       lista de discussão de tradutores ⟨debian-l10n-portuguese@lists.debian.org⟩.