Page 1 sur 3

Annuler un RandomSeed

Publié : sam. 07/oct./2006 7:33
par SPH
Apres avoir executer un quelconque randomseed, il est impossible de revenir au mode aleatoire de random.
Il devrait donc exister une instruction killrandomseed ou tuer le processus randomseed en lui passant la valeur 0 (ou une valeur negative)

Publié : sam. 07/oct./2006 12:29
par Dr. Dri
LOL

y'a pas de "mode aléatoire de random"
au démarrage de ton programme (si jamais tu utilises la fonction random) un randomseed sera effectué

si tu veux en faire un toi même qui soit vraiment aléatoire donne ElapsedMilliseconds() comme germe aléatoire

Dri

Publié : sam. 07/oct./2006 12:40
par Backup
ou bien un simple

Debug RandomSeed(Random(65535))

Publié : sam. 07/oct./2006 16:12
par SPH
Dr. Dri a écrit :LOL

y'a pas de "mode aléatoire de random"
au démarrage
Ha oui ?
Alors, lance plusieurs fois ce simple programme :

Code : Tout sélectionner

Debug Random(1000000000)
Quoi ? Comment ?? Ca ne debuggue pas la meme chose ????
Voila, tu viens d'apprendre ce que RANDOM signifie :wink:

Publié : sam. 07/oct./2006 17:16
par Backup
Dri a raison !!

les random() sont pris sur une liste certe tres longue mais une liste de chiffre
va lire cette article tres interressant sur le sujet
http://developpeur.journaldunet.com/tut ... sard.shtml

Publié : sam. 07/oct./2006 17:51
par SPH
Dobro a écrit :Dri a raison !!
:roll:

Code : Tout sélectionner

Debug Str(Random(100))+" : nombre entre 0 et 100 impossible a prevoir"
Debug Str(Random(100))+" : nombre entre 0 et 100 impossible a prevoir"
Debug Str(Random(100))+" : nombre entre 0 et 100 impossible a prevoir"
Debug Str(Random(100))+" : nombre entre 0 et 100 impossible a prevoir"
Debug ""
RandomSeed(100) : Debug "RandomSeed(100)"
Debug ""
Debug Str(Random(100))+" : le chiffre trouvé est 37"
Debug Str(Random(100))+" : le chiffre trouvé est 16"
Debug Str(Random(100))+" : le chiffre trouvé est 27"
Debug Str(Random(100))+" : le chiffre trouvé est 10"
Debug ""
RandomSeed(-1) : Debug "RandomSeed(-1)"
Debug "; Disons qu'on kill le process RandomSeed grace a '(-1)'"
Debug "; pour retrouver un réel mode aléatoire"
Debug ""
Debug Str(Random(100))+" : le chiffre sera 43; helas"
Debug Str(Random(100))+" : le chiffre sera 42; helas"
Debug Str(Random(100))+" : le chiffre sera 75; helas"
Debug Str(Random(100))+" : le chiffre sera 88; helas"
Debug ""
Debug "; Dommage, apres un RandomSeed, TOUS les nombres sont"
Debug "; previsibles meme quand on n'en veux plus..."
Debug "; Il manque un 'kill randomseed'"

Publié : sam. 07/oct./2006 17:59
par Backup
et voila !

Code : Tout sélectionner

Debug Str(Random(100))+" : nombre entre 0 et 100 impossible a prevoir"
Debug Str(Random(100))+" : nombre entre 0 et 100 impossible a prevoir"
Debug Str(Random(100))+" : nombre entre 0 et 100 impossible a prevoir"
Debug Str(Random(100))+" : nombre entre 0 et 100 impossible a prevoir"
Debug ""
RandomSeed(100) : Debug "RandomSeed(100)"
Debug ""
Debug Str(Random(100))+" : le chiffre trouvé est 37"
Debug Str(Random(100))+" : le chiffre trouvé est 16"
Debug Str(Random(100))+" : le chiffre trouvé est 27"
Debug Str(Random(100))+" : le chiffre trouvé est 10"
Debug ""
RandomSeed(Random(32000)) : Debug "RandomSeed(-1)"
Debug "; Disons qu'on kill le process RandomSeed grace a '(-1)'"
Debug "; pour retrouver un réel mode aléatoire"
Debug ""
Debug Str(Random(100))+" : le chiffre sera 43; helas"
Debug Str(Random(100))+" : le chiffre sera 42; helas"
Debug Str(Random(100))+" : le chiffre sera 75; helas"
Debug Str(Random(100))+" : le chiffre sera 88; helas"
Debug ""
Debug "; Dommage, apres un RandomSeed, TOUS les nombres sont"
Debug "; previsibles meme quand on n'en veux plus..."
Debug "; Il manque un 'kill randomseed'" 

Publié : sam. 07/oct./2006 18:04
par Patrick88
RandomSeed(ElapsedMilliseconds()) à la place du RandomSeed(-1)

pat

Publié : sam. 07/oct./2006 18:09
par SPH
15; 31; 93; 63
15; 31; 93; 63
15; 31; 93; 63
15; 31; 93; 63
15; 31; 93; 63
15; 31; 93; 63
15; 31; 93; 63

Ha ouai dodo, tes randoms sont tres aleatoire !!

Publié : sam. 07/oct./2006 18:17
par Patrick88
vouivouijevoijevoi

Publié : sam. 07/oct./2006 18:29
par SPH
Patrick88 a écrit :RandomSeed(ElapsedMilliseconds()) à la place du RandomSeed(-1)

pat
C'est la meilleure approche pour corriger ce petit soucis.
Merci Pat88

Publié : sam. 07/oct./2006 20:51
par Backup
t'es pas du genre bourrain toi ??

je t'es indiqué la façon de suprimer un randomseed

maintenant je te remontre a nouveau en t'indiquant ou il faut regarder !!




RandomSeed (100) : Debug "RandomSeed(100)"
Debug Str ( Random (100))+ " : le chiffre trouvé est 37"
Debug Str ( Random (100))+ " : le chiffre trouvé est 16"
Debug Str ( Random (100))+ " : le chiffre trouvé est 27"
Debug Str ( Random (100))+ " : le chiffre trouvé est 10"


OpenConsole ()
EnableGraphicalConsole (1)
debut:
RandomSeed ( Random (32000))

Resultat = ConsoleLocate (1, 1)
Print ( "; Disons qu'on kill le process RandomSeed grace a '(-1)'" )
Resultat = ConsoleLocate (1, 2)
Print ( "; pour retrouver un réel mode aléatoire" )
Resultat = ConsoleLocate (1, 4)
Print ( Str ( Random (100))+ " <<<<<<<<<< SPH regarde la : le chiffre sera 43; helas" )
Resultat = ConsoleLocate (1, 5)
Print ( Str ( Random (100))+ " <<<<<<<<<< SPH regarde la : le chiffre sera 42; helas" )
Resultat = ConsoleLocate (1, 6)
Print ( Str ( Random (100))+ " <<<<<<<<<< SPH regarde la : le chiffre sera 75; helas" )
Resultat = ConsoleLocate (1, 7)
Print ( Str ( Random (100))+ " <<<<<<<<<< SPH regarde la : le chiffre sera 88; helas" )
Delay (1000)
ClearConsole ()
Goto debut

Publié : sam. 07/oct./2006 20:53
par Backup
et c'est pas dodo mais DOBRO !

(j'ai laissé tes idiotie de ": le chiffre sera 43; helas") pour te montrer que tu te trompe evidement :lol:

Publié : sam. 07/oct./2006 21:02
par SPH
Dobro a écrit :t'es pas du genre bourrain toi ??

je t'es indiqué la façon de suprimer un randomseed

maintenant je te remontre a nouveau en t'indiquant ou il faut regarder !!
Je le lance. Résultat :
15; 31; 93; 63
Je le relance. Résultat :
15; 31; 93; 63
Je le relance. Résultat :
15; 31; 93; 63

Quelle methode aleatoire !!!

Je prend maintenant la tres bonne approche de pat en remplacant ton :

Code : Tout sélectionner

RandomSeed ( Random (32000)) 
Par son excellent :

Code : Tout sélectionner

RandomSeed(ElapsedMilliseconds()) 
Je le lance. Résultat :
49; 46; 6; 45
Je le relance. Résultat :
18; 77; 55; 20

On arrete là où tu souhaites encore defendre une mauvaise methode ?

Publié : sam. 07/oct./2006 21:04
par Backup
je pense que t'a un problem avec ton ordi !!
chez moi mon programme en console fait varier les chiffres !! 8O

en faisant "RandomSeed ( Random (32000))"
c'est evident qu'il fait changer le ramdom seed !!

si ça marche pas chez toi , c'est pas normal !

denis ? ou Nico ,Dri ?? quelqu'un ?