Publié : sam. 07/oct./2006 21:16
Pareil pour moi, les chiffres varient correctement !Dobro a écrit :je pense que t'a un problem avec ton ordi !!
chez moi mon programme en console fait varier les chiffres !!![]()
Pareil pour moi, les chiffres varient correctement !Dobro a écrit :je pense que t'a un problem avec ton ordi !!
chez moi mon programme en console fait varier les chiffres !!![]()
Code : Tout sélectionner
OpenConsole()
PrintN("DodoRandom(X)")
PrintN("")
PrintN("OpenConsole()")
PrintN("For i=1 To 10")
PrintN("RandomSeed (100)")
PrintN("PrintN(Str(Random(100)))")
PrintN("PrintN(Str(Random(100)))")
PrintN("PrintN(Str(Random(100)))")
PrintN("PrintN(Str(Random(100)))")
PrintN("PrintN('==')")
PrintN("Next")
PrintN("Repeat")
PrintN("ForEver")
PrintN("")
For i=1 To 10
RandomSeed (Random(3000))
PrintN(Str(Random(100)))
PrintN(Str(Random(100)))
PrintN(Str(Random(100)))
PrintN(Str(Random(100)))
PrintN("==")
Next
Repeat
ForEver
Toujours aussi charmant...Dobro a écrit :a balancer tes codes comme ça sans explication
tu vas passer pour un chercheur de merde toi ..
heu ! je suis deja une vedette ici depuis pas loin de 4 ans !!SPH a écrit :Ou est-ce parce que tu voulais me voler la vedette ?
Dodo tu veux dire ?Cpl.Bator a écrit :Houla, SPH t'a vraiment le don d'énerver Mitch![]()
NON NON et NON !!Cpl.Bator a écrit :Mise à part sa, le randomseed(random(xxx)) marche très bien.
Code : Tout sélectionner
Debug ("Aleatoires :")
Debug Random (50)
Debug Random (50)
Debug Random (50)
Debug Random (50)
RandomSeed(50)
Debug ""
Debug ("Non aleatoires :")
Debug Random(50)
Debug Random(50)
Debug Random(50)
Debug Random(50)
RandomSeed(Random(20))
Debug ""
Debug ("Non aleatoires d'une autre table :")
Debug Random(50)
Debug Random(50)
Debug Random(50)
Debug Random(50)
a, b, c et d sont aleatoires, et eux seuls.Aleatoires :
a
b
c
d
Non aleatoires :
22
23
47
37
Non aleatoires d'une autre table :
26
0
17
26
Code : Tout sélectionner
RandomSeed(Random(20))
Interroger le ElapsedMilliseconds() est une solution temporaire mais pas parfaite car un programme demarrant avec la machine aura presque a coup sûr le meme ElapsedMilliseconds() et là, on retombe sur un nombre non reellement aleatoire...RandomSeed(Nombre_reellement_Aleatoire)
Captain bator, il y a une difference entre :Cpl.Bator a écrit :Avec un Randomseed(random(65535)) pas de pb. bizarre.
Code : Tout sélectionner
RandomSeed(Random(65535))
Debug Random(100)
Code : Tout sélectionner
RandomSeed(15)
RandomSeed(Random(65535))
Debug Random(100)
Code : Tout sélectionner
Debug ("Mode reellement aléatoire")
Debug Random(100)
Debug Random(100)
Debug Random(100)
Debug Random(100)
Debug ("-")
RandomSeed(10)
Debug ("Mode 'pseudo' aléatoire de la 'TableSeed' 10")
Debug Random(100) ; non aleatoire donc
Debug Random(100) ; non aleatoire donc
Debug Random(100) ; non aleatoire donc
Debug Random(100) ; non aleatoire donc
Debug ("-")
RandomSeed(Date()-ElapsedMilliseconds())
Debug ("Retour au Mode reellement aléatoire")
Debug Random(100)
Debug Random(100)
Debug Random(100)
Debug Random(100)
Après plusiers essais, voici ce que cela me donneLes 2 conditions RandomSeed(Date()) et RandomSeed(ElapsedMilliseconds()) ne pourront plus jamais nous redonner la meme serie de nombres aleatoires. ElapsedMilliseconds avait le probleme du programme demarrant avec la machine, et Date avait le probleme de l'interval de moins d'une seconde.
Regardez bien le "Mode reellement aléatoire" et le "Retour au Mode reellement aléatoire"Mode reellement aléatoire
7
57
16
83
-
Mode 'pseudo' aléatoire de la 'TableSeed' 10
15
54
13
67
-
Retour au Mode reellement aléatoire
7
57
16
83
************** Nouvel essai **************
Mode reellement aléatoire
91
66
90
79
-
Mode 'pseudo' aléatoire de la 'TableSeed' 10
15
54
13
67
-
Retour au Mode reellement aléatoire
91
66
90
79