Trier un tab

-
bonsoir..s'il vous plait aidez moi si vous pouvez!?j ai fait un code pour trier un tableau mais il y'a une erreur et j arrive pas a résoudre voici la partie d erreur..... et au revoir :)
while(i<=n){
            if( t[i]%2 == 0 ){
                t2[j]=t[i]; 
                j++;
               }
             else{           
                t3[k]=t[i]; //ici se pose une erreur !
                k++; 
             }
           i++; 
            }


EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici : ICI

Merci d'y penser dans tes prochains messages.
Afficher la suite 

Votre réponse

2 réponses

Messages postés
14323
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
15 décembre 2018
0
Merci
Ok, on a la lige de l'erreur, mais quelle est-elle cette erreur ?
justement c est ce que j arrive pas a comprendre!!!j ai fait une affectation si la valeur est impair je la mettre dans le t3
Commenter la réponse de NHenry
Messages postés
15867
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
15 décembre 2018
0
Merci
Bonjour,

Je ne vois que deux erreurs possibles pour cette ligne :
NullPointerException : si
t3
n'est pas initialisé.
ArrayIndexOutOfBoundsException : si
t3
est dimensionné trop petit.

Si
t
est un tableau quelconque, la taille de
t2
et
t3
doit être au moins égal à celle de
t
pour gérer les cas où il ne contient que des valeurs paires ou que des valeurs impaires.

int[] t2 = new int[t.length];
int[] t3 = new int[t.length];

Attention au
while (i<=n)
parce que si
n
vaut
t.length
il faudra s'arrêter à
i<n
car en Java les indices commencent à
0
et finissent à
t.length-1
...

Au passage, il serait mieux de faire une boucle
for
:
for (int i=0, n=t.length; i<n; i++)
merciiii beaucoup!!! oui c est le probleme j ai pas initialisé la taille du t3 :p mercii pour votre aide :)
Commenter la réponse de KX

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.