[Prévia cron] [Próxima Cron] [Prévia por assunto] [Próxima por assunto]
[Índice cronológico] [Índice de assunto] [Índice de autor]

Geração de números aleatórios



Olá pessoal,


Não sei se trata-se de um "defeito" da linguagem C ou do DJGPP ou até do meu
computador mas, ao pedirmos para o programa a seguir gerar m números
aleatórios, a cada execução do mesmo ele sempre "sorteará" os mesmos
números.

-----------------------------------------------------------------------
#include <stdio.h>
#include <stdlib.h>

int valor_aleatorio()
   {return rand();
   }

main(int argc, char *argv[])
   {int i, n = atoi(argv[1]), *aleat = malloc(n*sizeof(*aleat));
    for(i = 0; i < n; i++) aleat[i] = valor_aleatorio();
    for(i = 0; i < n; i++) printf(" %d ", aleat[i]);
   }
-----------------------------------------------------------------------

Números aleatórios gerados:

1ª execução (5 números)
0  4232237  178803790  758674372  1565954732

2ª execução (5 números)
0  4232237  178803790  758674372  1565954732

3ª execução (8 números)
 0  4232237  178803790  758674372  1565954732  392261992  396415378
2092582042

4ª execução (12 números)
 0  4232237  178803790  758674372  1565954732  392261992  396415378
2092582042  114891576  1951776693  1001493746  1422887394

Alguém poderia dizer o que aconteceu?
A "culpa" é de quem: DJGPP, programa mal feito, meu computador?

Obrigado pela atenção,


Thiago Rodrigo