|
|
|
|
Bonsoir tout le monde
j'aimerais savoir pourquoi mon programme ne marche pas ???
public class TriNombre {
double[] tab={35, 6, 2, 66, 100, 36, 11, 1, 6, 14};
public void Tri(double [] tab) {
double max;
double aux=0;
for(int i=0;i<8;i++){
for(int j=1;j<9;j++){
if (tab[i]>tab[j]){
tab[i]=aux;
tab[i]=tab[j];
tab[j]=aux;
}
}
}
}
public void affiche() {
for (int i=0;i<9;i++)
System.out.println(tab[i]);
}
}
en gros mon idee est de comparer UNE valeure ( la valeure max) a toutes les autres jusqu'a quelle soit a la bonne place tout au bout du tableau (c'est un tri a bulle je crois)
c'est pas le meilleur algo pour ranger un tableau mais je ne veux pas me prendre la tete avec un algo plus compliqué (genre le quick sort >_< )
Merci beaucoup
Je pense qu'en modifiant ici il y a des chances que ça fonctionne mieux ;) :
tab[i]=aux; tab[i]=tab[j]; tab[j]=aux; Transformé en : <code>aux=tab[i];// --- Sauvegarde de tab[i] dans aux et non l'inverse tab[i]=tab[j]; tab[j]=aux; </code> Si après ça ça ne fonctionne toujours pas c'est que ton algo est mauvais et qu'il faut penser à en faire un autre. ~ N'oubliez pas la balise "Résolu" lorsque votre problème est... résolu :) ~ |