Pular para o conteúdo principal

Gerando números aleatórios

Função Aleatorio
Gera um número aleatório de acordo com a semente passada. Retorna um número aleatório menor ou igual ao primeiro parâmetro informado, usando como semente o segundo parâmetro. É recomendado que esta semente seja sempre o último número aleatório gerado por esta função.
Sintaxe:Aleatorio(nMax, nSeed)

Parâmetros
nMax – Número máximo para a geração do número aleatório
nSeed – Semente para a geração do número aleatório

Retorna
nRet – Número aleatório retornado

Exemplo:
nSeed := 0
For i := 1 to 100
nSeed := aleatorio(100,nSeed)
? str(i,3) + " numero aleatorio gerado: " + str(nSeed,3)
Next i

Comentários

  1. E como faço para gerar tipo uns 500 números aleatórios?

    ResponderExcluir
    Respostas
    1. Olá Hussyvel,

      Para isto você pode fazer o seguinte:

      //------------
      aNumGuarda := {}
      nSeed := 0

      for i := 1 to 2000
      nSeed := aleatorio(2000,nSeed)
      if ascan ( aNumGuarda, nSeed ) = 0
      aadd(aNumGuarda, nSeed)
      if len(aNumGuarda) > 499
      exit
      endif
      endif
      next i
      //------------

      O vetor aNumGuarda, recebe 500 números aleatórios gerados (entre 1 e 2000, ou o intervalo que achar melhor), sem repetição.
      Agora só falta você escolher a forma que deseja para mostrar os números que estão armazenados em aNumGuarda.
      Bom desenvolvimento!

      Obrigado pela sua participação!

      Excluir

Postar um comentário

Postagens mais visitadas deste blog

Zeros à esquerda automaticamente

Uma dica simples para que no momento de digitar um código (ex.:000034), você e seus usuários não fiquem contando os zeros à esquerda deste. Configurador Com o pequeno código abaixo (no campo Regra ) num gatilho*, você não terá mais este trabalho. O teste foi feito com o campo RA_REGISTR : Os campos obrigatórios (em azul) devem ser preenchidos. Confirme, saia do Configurador e teste o campo que você configurou o gatilho. Após preencher o campo e clicar TAB (ou ENTER), os zeros à esquerda completam o tamanho do campo : * Se você não sabe onde e como criar gatilhos, acesse o link:   Criando gatilhos no Protheus

Status das tabelas: SPED050 e SPED052

STATUS DA TABELA SPED050: Status NFe (campo STATUS) :  1 = NFe Recebida.  2  =  NFe Assinada.  3  =  NFe com falha no schema XML.  4  =  NFe transmitida.  5  =  NFe com problemas.  6  =  NFe autorizada.  7  =  Cancelamento. Status Cancelamento/inutilização (campo STATUSCANC) :  1  =  NFe Recebida.  2  =  NFe Cancelada.  3  =  NFe com falha de cancelamento/inutilização. Status Mail (campo STATUSMAIL) :  1  =  A transmitir.  2  =  Transmitido.  3  =  Bloqueio de transmissão – cancelamento/inutilização. STATUS DO SPED052:  1  =  Lote transmitido.  2  =  Lote recebido com sucesso.  3  =  Lote com erro.

Protheus integrado ao Active Directory (Single SignOn)

Usando a integração do usuário do Protheus com o Active Directory (AD): 1) O ambiente deve estar atualizado (RPO, Update, LIB e Binário). 2) Entre no Configurador / Usuários / Senhas / Política. 3) Na primeira aba, em Parâmetros, defina no como "Habilitar single sign-on" se a integração será obrigatória ou opcional. 4) No combo "Modalidade de Single Sign-on", defina como "Active Directory". Clique em Confirmar. 5) Agora vá ao cadastro do usuário (Usuário / Senhas / Usuários), clique sobre o usuário e clique em Alterar. Na primeira aba (Usuário), selecione a aba Active Directory. 6) Clique duas vezes sobre o campo abaixo de "Domínio", e preencha o domínio da rede.  Clique duas vezes sobre o campo abaixo de "Usuário", e preencha o nome de usuário da rede que ficará vinculado a este usuário do Protheus. Clique em Confirmar. Ao entrar no Protheus, já irá aparecer por padrão o dom...