Ma méthode ne s'éxecute pas !!!!

sof -  
KX Messages postés 19031 Statut Modérateur -
public static void suppoccur(int []t,int n)
{
for(int i=0;i<n;i++)
{
for(int j=i+1;j<n;j++)
if(t[i]==t[j])
{ int k = j;
while(k<n)
{
t[k]=t[k+1];<==l'erreur (la ligne 33)
k++;
}n--;
}
for(int s=0;s<n;s++)
{
System.out.println("\t"+t[s]);
}}// partie du programme
et l'erreur qu'il me retourne après l'éxecution :
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 4
at occurenc.suppoccur(occurenc.java:33)

2 réponses

zipe31 Messages postés 38797 Date d'inscription   Statut Contributeur Dernière intervention   6 435
 
Bonjour,

S'il vous plaît
Merci
Au revoir
etc.
Sont monnaie courante quand on veut obtenir quelque chose !

Saine lecture...*
A voir aussi

Merci de votre compréhension.

;-)

* Bonus
0
KX Messages postés 19031 Statut Modérateur 3 020
 
Tu as très certainement t.length==4 et k==3 et le programme plante sur t[k+1]
Il faut toujours que tu ai 0<=n<t.length dans cette boucle while ce qui n'est pas le cas ici
0