Java.lang.ArrayIndexOutOfBoundsException: 3
domxaline
-
domxaline -
domxaline -
Bonjour,
En exécutant mon programme, ce dernier me donne que un seul éléments inversé:
Entrez le nb du tableau:3
Entrez l'élément 1:4
Entrez l'élément 2:5
Entrez l'élément 3:6
Vous avez rentré les numéros suivantes:
4.5.6.
Après l'inversion les numéros sont:
6
veuillez m'aidez s'il vous plaît
En exécutant mon programme, ce dernier me donne que un seul éléments inversé:
Entrez le nb du tableau:3
Entrez l'élément 1:4
Entrez l'élément 2:5
Entrez l'élément 3:6
Vous avez rentré les numéros suivantes:
4.5.6.
Après l'inversion les numéros sont:
6
veuillez m'aidez s'il vous plaît
import java.util.Scanner;
public class Somme
{
public static void main(String[] args)
{
int i;
int n=0;
Scanner sc=new Scanner(System.in);
System.out.print("Entrez le nb du tableau:");
int nb=sc.nextInt();
int tab[]=new int[nb];
for(i=0;i<nb; i++)
{
System.out.print("Entrez l'élément "+(i+1)+":");
tab[i]=sc.nextInt();
}
System.out.println("Vous avez rentré les numeros suivantes:");
for(i=0;i<nb;i++)
{
System.out.print(tab[i]+".");
}
int moi=Test(tab,n);
System.out.println(moi);
}
public static int Test(int[]tab,int n)
{
System.out.println("\nAprès l'inversion les numéros sont:");
int i=0;
n=tab.length-1;
for(i=0; i<n; i++)
{
int temp=tab[i];
tab[i]=tab[n-i];
tab[n-i]=temp;
//System.out.print(tab[i]+".");
}
int moi=tab[n-i];
return(moi);
}
}
2 réponses
Bonjour,
Doit être
Puisque n n'est pas utilisé dans le main et est égal à 0.
int moi=Test(tab,n);
Doit être
int moi=Test(tab,nb);
Puisque n n'est pas utilisé dans le main et est égal à 0.
toujours pareil
int moi=Test(tab,nb);
System.out.println(moi);
}
public static int Test(int[]tab,int nb)
{
System.out.println("\nAprès l'inversion les numéros sont:");
int i=0;
nb=tab.length-1;
for(i=0; i<nb; i++)
{
int temp=tab[i];
tab[i]=tab[nb-i];
tab[nb-i]=temp;
}
int moi=tab[nb-i];
return(moi);
}
}