Java:pb initializé mon arrays

Résolu
cs_domxaline Messages postés 327 Date d'inscription jeudi 21 août 2008 Statut Membre Dernière intervention 10 mai 2012 - 13 avril 2012 à 22:03
cs_Julien39 Messages postés 6414 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 29 juillet 2020 - 19 avril 2012 à 08:53
Bonjour,
j'ai un pb initialiser mon arrays;je veux avoir résultat suivant:
1 0 0 0 0
0 1 0 0 0
0 0 1 0 0
0 0 0 1 0
0 0 0 0 1
mais j'ai erreur en compilant mon prg
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 4
at TestArrays2.main(TestArrays2.java:17)
voilà mon prg
public class TestArrays2 
{
public static void main(String[]args)
{
int i;
int j;
 
int table [][]=new int [5][5];
for(i=0;i<5;i++)
{
for(j=0;j<5;j++)
{
if(i==j)
table[i][j]=1;
else
table[i][j]=0;	
}
System.out.print(i);
System.out.print(j);
}
}

veuillez m'aider svp
résulat que je obtiens
0515253545

mais je veux
1 0 0 0 0
0 1 0 0 0
0 0 1 0 0
0 0 0 1 0
0 0 0 0 1

3 réponses

cs_GodConan Messages postés 2113 Date d'inscription samedi 8 novembre 2003 Statut Contributeur Dernière intervention 6 octobre 2012 12
14 avril 2012 à 09:44
Salut,

Si ta matrice est constante, init la en constante :
int[][] matrice = {{,,,},{...}...};
sinon utilise la taille de ton tableau dans la boucle et non une constante ("5")


je n ai aucun problème à l'execution de ce code :
        int[][] tab = new int[5][5];
        System.out.println("je veux : ;o)");
for(int i=0;i<tab.length;i++)
{
for(int j=0;j<tab[i].length;j++)
{
if(i==j) tab[i][j]=1;
else tab[i][j]=0;
System.out.print(tab[i][j] + " ");
}
            System.out.print("\n");
}

ni non plus à celui ci
        int[][] tab = new int[5][5]; // par default tout est à 0
        //init
        for(int i=0;i<tab.length;i++) // on utilise la sysmétrie de la table
            tab[i][i]=1; 
        // affichage
        System.out.println("je veux : ;o)");
for(int i=0;i<tab.length;i++) { // on utilise la sysmétrie de la table
  for(int j=0;j<tab[i].length;j++)
                System.out.print(tab[i][j] + " ");
          System.out.print("\n"); }




GodConan ;o)
3
cs_domxaline Messages postés 327 Date d'inscription jeudi 21 août 2008 Statut Membre Dernière intervention 10 mai 2012 2
14 avril 2012 à 17:24
merci beaucoup ça marche
0
cs_Julien39 Messages postés 6414 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 29 juillet 2020 371
19 avril 2012 à 08:53
Ok, j'accepte la réponse à ta place, penses à le faire la prochaine fois.

a+
0
Rejoignez-nous