Remplir un tableau bidimensionnel alatroirement

titchouno Messages postés 10 Date d'inscription vendredi 23 avril 2004 Statut Membre Dernière intervention 27 janvier 2005 - 23 avril 2004 à 11:46
leprov Messages postés 1160 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 21 octobre 2010 - 28 juil. 2004 à 21:56
En fait je cree un tableau [X][X]
que je rempli de zero.
Mon probleme est de mettre X 1 aleatoirement dans ce tableau.
j utilise deux varaibles aleatoire1,aleatoire2
ou
aleatoire1 et 2 = rand () %X;//pour ne pas sortir du tableau

aleatoire1et 2 constituent les coordonnees (ligne et colonne)du tableau.
Mais j ai un probleme car il se peut que je tombe deux fois sur la même case du tableau, ce qui apour consequence d avoir moins de X 1 dans mon tableau ce queje dois absolument eviter

Comment faire ???
Merci

how is going to end ?

4 réponses

theneoiceman Messages postés 78 Date d'inscription lundi 14 avril 2003 Statut Membre Dernière intervention 23 avril 2010
23 avril 2004 à 12:34
dans ce cas c'est simple il te suffit de controler le contenu de la case de ton tableau avant de l'affecter d'un noueau 1.
Genre :
if(tableau[x][y]!=1)
// affectation
else // il y a deja un 1
{
do
{
x=rand()%X;
y=rand()%X;
}
while(tableau[x][y]==1)
// et on fait l'affectation
}

Voila
allez bonne prog.
++
0
titchouno Messages postés 10 Date d'inscription vendredi 23 avril 2004 Statut Membre Dernière intervention 27 janvier 2005
23 avril 2004 à 13:04
Ok merci en fait c'est plus simple que je croyais.
Merci.
u petit detail:
quand on fait un rand()%10
il prend les valeur dans un intervalle
[0 .. 10] ou
[0 .. 10[

how is going to end ?
0
theneoiceman Messages postés 78 Date d'inscription lundi 14 avril 2003 Statut Membre Dernière intervention 23 avril 2010
23 avril 2004 à 13:14
ca prend les valeurs de l'intervalle [0..10[
Voila
Bonne prog...
++
neo
0
leprov Messages postés 1160 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 21 octobre 2010 17
28 juil. 2004 à 21:56
topujours des intervalles semi ouverts en informatique, dans absolument tt, pas de questions a te poser, ton intervalle doit tjs etre de type [min..max[
0
Rejoignez-nous