Nombre aléatoire, réelement...

yobogs - 24 juin 2001 à 18:43
 Marc - 25 juin 2001 à 10:22
Bonjour,
j'utilise cette fonction
Int(2000 * Rnd + 1)
pour génèrer un entier aléatoire entre 1 et 2000.
Or je me rends compte que lorsque je lance mon appli et que je demande à génerer le n°, le premier est toujours le 1412, puis 1067, ...
Existe t-il une fonction qui me permettrai de generer un n° entre 1 et 2000 mais vraiment de manière àléatoire?

Merci d'avance

3 réponses

Tout d'abord il faut que tu saches que l'aléatoire tel que tu le conçois n'existe pas. N'importe quel chiffre tiré, par quelque moyen, que ce soit un jet de dés ou avec l'ordinateur n'est que pseudo-aléatoire. Fais donc un programme additionnant 10000 chiffres tirés aléatoirement et qui en fait la moyenne. Tu te rendras compte que, à peu de chose près, la moyenne est ... la moyenne !

Pour ce que tu demandes, il te suffit d'ajouter "Randomize" dans la procédure form_load.
0
oui, c bien simple
met
Randomize Timer

au début de t'as procédure ou de t'as fonction
et ca changera TOU LE TEMPS

@+
fabs :big)
12waresoft WebSite
0
Salut,
De fait, il faut faire attention avec randomize.Statistiquement tu distribution devient alèatoire quand tu accumules enviro 10.000 chiffres.....Impossible.
Le plud gênant, c´est souvent la répétition des nombres,ce qui est très fréquent quand le chiffre est petit.
C´est ce que j´ai essayé d´èliminer dans la source qui s´appelle Grid de Formule 1 (=.
Même avec timer,tu risques d´avoir les mêmes résultats si tu rééxécutes la même opération exacement 24 H après la premièr.
Cetains incluent la date en plus de timer.
A +
Marc.
0
Rejoignez-nous