A voir également:
- JAVA - Tableau
- Tableau croisé dynamique - Guide
- Jeux java itel ✓ - Forum Jeux vidéo
- Java runtime - Télécharger - Langages
- Tableau ascii - Guide
- Java apk - Télécharger - Langages
1 réponse
Hello,
J'ai regardé ton code, et il faut que je t'avoue que je comprend pas pkoi l'initialisation de tes tabNeg et tabPos se fait dans ta boucle for? La conséquence de cela, c que tu auras un tableau vide et dans laquelle tu affecte une valeur dans la dernière cellule.
Voici une correction qui devrait t'aider :
J'ai regardé ton code, et il faut que je t'avoue que je comprend pas pkoi l'initialisation de tes tabNeg et tabPos se fait dans ta boucle for? La conséquence de cela, c que tu auras un tableau vide et dans laquelle tu affecte une valeur dans la dernière cellule.
Voici une correction qui devrait t'aider :
static void traiterTableau(int tab[])
{
int[] tabNeg = new int[tab.length];
int[] tabPos = new int[tab.length];
int nbNeg=0;
int nbPos=0;
for(int i=0; i<tab.length; i++)
{
if (tab[i]<0)
{
tabNeg[nbNeg]=tab[i];
nbNeg++;
}
else if (tab[i]>0)
{
tabPos[nbPos-1]=tab[i];
nbPos++;
}
}
27 nov. 2008 à 11:35
27 nov. 2008 à 18:56
27 nov. 2008 à 19:26
static void traiterTableau(int tab[]) { int[] tabNeg; int[] tabPos; int nbNeg=0; int nbPos=0; for(int i=0; i<tab.length; i++) //boucle qui détermine le nombre de négatifs et de positifs { if (tab[i]<0) { nbNeg++; } else if (tab[i]>0) { nbPos++; } } tabNeg = new int[nbNeg]; tabPos = new int[nbPos]; int positionNeg=0; int positionPos=0; for(int i=0; i<tab.length; i++)//boucle qui remplit les tableaux tabNeg et tabPos { if (tab[i]<0) { tabNeg[positionNeg]=tab[i]; positionNeg++; } else if (tab[i]>0) { tabPos[positionPos]=tab[i]; positionPos++; } }1 déc. 2008 à 11:24
Malheureusement, je ne vois pas comment tu pourrais faire en faisant qu'une boucle, à moins de connaître le nombre d'élément au paravant...
A la limite, dans la boucle général tu compte les éléments afin de déterminer un stop. Tu peux utiliser tes variables positionNeg et positionPos comme arret au moment de l'affichage des tableaux...
genre :
for(int i=0; i<positionNeg; i++) { System.out.println(tabNeg[i]); //je suis plus sur du system.out.println à vérifier } for(int i=0; i<positionPos; i++) { System.out.println(tabPos[i]); }sinon tu stock tout dans une arraylist au lieu d'un tableau et tu fait simplement des add, mais tu auras des object Integer au lieu de int.