Ma méthode ne s'éxecute pas !!!!
sof
-
KX Messages postés 19031 Statut Modérateur -
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)
{
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
-
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 -
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