Radom pas si random

cs_zone51 Messages postés 10 Date d'inscription vendredi 27 septembre 2002 Statut Membre Dernière intervention 25 février 2008 - 14 mars 2004 à 16:16
Michou69004 Messages postés 16 Date d'inscription mardi 11 décembre 2007 Statut Membre Dernière intervention 17 janvier 2009 - 7 juin 2009 à 18:33
Voilà ma portion de code :

while(r < m_iCelluleVivante)
{
Random random = new Random();
int x = random.Next(m_iCelluleLargeur);
int y = random.Next(m_iCelluleHauteur);
if(this.m_iTabVie[x,y]==0)
{
this.m_iTabVie[x,y]=1;
pB[x,y].Image = imageList.Images[1];
r++;
}
}

Le problème c'est que cela provoque une symétrie, avec juste le nombre x et y incrémenté de 1.
A voir également:

4 réponses

cs_Boat Messages postés 1 Date d'inscription mercredi 29 octobre 2003 Statut Membre Dernière intervention 11 mai 2004
11 mai 2004 à 13:42
J'avais le même problème que toi mais je viens de le résoudre... il suffit de mettre la déclaration du Random en dehors du while.
Comme ceci:

Random random = new Random();
while(r < m_iCelluleVivante)
{
int x = random.Next(m_iCelluleLargeur);
int y = random.Next(m_iCelluleHauteur);
if(this.m_iTabVie[x,y]==0)
{
this.m_iTabVie[x,y]=1;
pB[x,y].Image = imageList.Images[1];
r++;
}
}



a + ;)
0
Elektra22 Messages postés 3 Date d'inscription vendredi 28 mars 2008 Statut Membre Dernière intervention 27 avril 2008
28 mars 2008 à 08:49
Bonjour à tous,
je dois générer des nombres aléatoir,
(pour pouvoir générer des solutions aléatoires pour le Récui Simulé),
j'utilise rnd.Next(min,max), mais ça me génére 4 fois de suite le meme nombre,
comment faire pour avoir des nombres (entier) totalement aléatoire??????

Merci d'avance
0
parlaciel Messages postés 33 Date d'inscription mardi 25 mars 2008 Statut Membre Dernière intervention 22 décembre 2009 1
18 nov. 2008 à 11:19
Bonjour! je re-up le post par ce que je suis confronté au même problème qui n'a pas eu de réponse!
Je souhaite générer une dizaine de points aléatoirement, avec la fonction random,  j'en crée 15 via 15 objets différents, et les 15 ont la même valeur... en java je n' avais pas eu ce problème, y a t' il une solution simple?
Merci!
0
Michou69004 Messages postés 16 Date d'inscription mardi 11 décembre 2007 Statut Membre Dernière intervention 17 janvier 2009
7 juin 2009 à 18:33
Bonjour a tous.
Le post est un peu ancien, mais je post cette reponse pour des personnes qui comme vous seront bloquer face a ce RANDOM pas si random

En fait, il suffit de declarer la variable  Random random = new Random(); en dehors de la fonction, de preference en global dans la classe:

private static Random random = new Random();

Voila, en esperant avoir pu vous aider.

Cordialement.
0
Rejoignez-nous