themessenger
Messages postés45Date d'inscriptionvendredi 26 octobre 2007StatutMembreDernière intervention 5 janvier 2009
-
4 déc. 2007 à 20:10
Twinuts
Messages postés5375Date d'inscriptiondimanche 4 mai 2003StatutModérateurDernière intervention14 juin 2023
-
5 déc. 2007 à 09:39
the messenger
class TestMatrices {
/** le main */
public static void main(String[] args) {
/*declaration des varriables et des tableaux*/
int[][] tab1;
int nbLignesTab1;
int nbColonnesTab1;
int i;
int j;
/*on demandes a l'utilusateur de saisir le nombre de lignes
et le nombre de colonnes du tableau tab1*/
nbLignesTab1 = Console.readInt("Saisir le nombre de lignes du tableau tab1:");
nbColonnesTab1 = Console.readInt("Saisir le nombre de colonnes du tableau tab1 :");
tab1 = new int [nbLignesTab1][nbColonnesTab1];
/*saisit de valeurs du tableau tab1*/
for (i = 0;i < tab1.length;i ++) {
for (j = 0;j < tab1[0].length;j ++) {
tab1[i][j] = Console.readInt("Saisir les valeurs de la ligne " + i + " du tableau");
tab1[i][j] = Console.readInt("Saisir les valeurs de la colonne " + j + " du tableau");
}
System.out.println("tab1["+i+"]["+j+"] = " +tab1[i][j]);
}
}
voila c mon programme si je l'execute il m'afiche exeoton in thread:array index out of bonds g reli le prog mé je trouve pa ce ki va pa help m
A voir également:
Index 0 out of bounds for length 0
Index 10 out of bounds for length 10 - Meilleures réponses
Index 0 out of bounds for length 0 java - Meilleures réponses
Là ça devrait marcher. Fais un peu plus d'investigation avant de poster un code et évite les fautes d'orthographe, "variable" ça prend un seul "r". "on demandes" ça s'écrit plutôt "on demande"...
Twinuts
Messages postés5375Date d'inscriptiondimanche 4 mai 2003StatutModérateurDernière intervention14 juin 2023111 5 déc. 2007 à 09:39
Salut,
sinon :
for (i = 0;i < tab1.length;i ++) {
for (j = 0;j < tab1[ i ].length;j ++) {
[...]
}
}
de plus ton :
System.out.println("tab1["+i+"]["+j+"] = " +tab1[i][j]);
n'est pas placé au bon endroit... au moment ou tu utilises 'j' il dépassera toujours de 1 la taille de tab1[i]...
ensuite ton affectation lignes colonnes ne sert à rien....
tab1[i][j] = Console.readInt("Saisir les valeurs de la ligne " + i + " du tableau");
tab1[i][j] = Console.readInt("Saisir les valeurs de la colonne " + j + " du tableau");
tu n'as pas l'impression de faire la même chose ?
bref la boucle qui aurait le plus de sens :
for (int i = 0; i < tab1.length; ++i) {
for (int j = 0; j < tab1[i].length; ++j) {
tab1[i][j] = Console.readInt("Saisir les valeurs de la ligne " + i + " colonne " + j + " du tableau");