Tableaux retourner l'indice de tableaux

Résolu/Fermé
domxaline - 4 juil. 2015 à 11:47
 domxaline - 8 juil. 2015 à 15:16
Bonjour,
je veux que mon tableau montre indice
comme ceci:
(0,0) = 1
(1,0) = 4
(0,1) = 2
(1,1) = 5
(0,2) = 3
(1,2) = 6
quelqu'un peut m'aider svp?

public class Divers3
{
public static void main(String[] args)
{
int tab[][] = new int [1][3];
int i, j, val;
val = 1;
for ( i = 0; i<1; i++ )
{
for ( j = 0; j<3; j++ )
{
tab [i] [j] = val;
val = val+1;
System.out.println("tab("+(i)+","+(j)+") = "+tab[i][j]);
}
System.out.println("");
}
for ( i=0; i<1; i++ )
{
for ( j=0; j<3; j++ )
{
tab [i] [j] = val;
val = val+1;
System.out.println("tab("+(i+1)+","+(j)+") = "+tab[i][j]);
}
}
System.out.println("");
}
}



6 réponses

KX Messages postés 16734 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 24 avril 2024 3 015
4 juil. 2015 à 12:19
Bonjour,

Il faudrait déjà commencer par revoir la taille de ton tableau int[1][3]...
0
expliquez moi svp
0
KX Messages postés 16734 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 24 avril 2024 3 015
4 juil. 2015 à 12:31
La taille de ton tableau est [1][3], ce qui donne 1x3=3 cases... pas 6 !
0
je crois que je vous ai expliqué mal
(0,0)sont des indices
(1,0) sont des indices
(0,1) sont des indices
(1,1) sont des indices
(0,2) sont des indices
(1,2) sont des indices

1,4,2,5,3,6 sont des éléments

tab [i] [j] = val;
val = val+1; // il faut le corriger pour avoir 1,4,2,5,3,6
0
KX Messages postés 16734 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 24 avril 2024 3 015
4 juil. 2015 à 12:52
"(0,0)sont des indices (1,0) sont des indices "
Impossible que tu ais l'indice (1,0) avec un tableau [1][3]

Si tu as un affichage avec les indices (1,0), (1,1), (1,2), c'est parce que tu bidouilles tes println en ajoutant 1 → System.out.println("tab("+(i+1)+","+(j)+") = "+tab[i][j]);

Mais ce n'est qu'un affichage, ton tableau n'a toujours que 3 cases...
0
ok disons que je modifie mon tableau
int tab[][] = new int [4][3];
et que je dois modifier encore svp
0
KX Messages postés 16734 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 24 avril 2024 3 015
4 juil. 2015 à 15:12
Pourquoi [4][3] ? Au hasard ? Tu veux 6 cases et là tu en prends 4x3=12...
Sinon quoi modifier d'autres : tes boucles !
Vu que tu changes les dimensions du tableau, il faut adapter le reste du code.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
alors j'ai prend
int tab[][] = new int [2][3]; // pour 6 cases
que je dois modifier dans le boucle svp?

dans la boucles je dois changer comme ceci:

for ( i = 0; i<2; i++ )
{
for ( j = 0; j<3; j++ )
{

et ensuite quoi d'autre ?
tab [i] [j] = //ça peut être? et quoi?
0
j'ai résolu mon pb ainsi:

public class Divers3
{
public static void main(String[] args)
{
int tab[][] = new int [2][3];
int i, j, val;
val = 1;
for ( j = 0; j<3; j++ )
{
for ( i = 0; i<2; i++ )
{
tab [i] [j] = i*3+j+1;
// i indice de ligne, 3 nb de colonnes, j indice de colonne,
// 1 au lieu d'avoir 0 à 5 pour avoir 1 à 6
System.out.println("tab("+(i)+","+(j)+") = "+tab[i][j]);
}
System.out.println("");
}
}
}


merci beaucoup
0