Quand tu demandes de l'aide, prend l'habitude de décrire ton problème. Tu ne l'as toujours pas donné. Nous savons juste que tu as "des erreurs", mais ne connaissons pas leur teneur. Nous ne savons pas non plus ce que tu tentes de faire.
deciles = new int[0];
-> déclaration d'un tableau de 0 entier. Les tableaux étant immutables en Java, tu dois avoir une belle exception lorsque tu tentes de t'en servir.
for(int i = 0; i < deciles.length - 1; ++i)
deciles[i] = " " + (i * 1) + "-" + (i * 10 + 9);
-> Il manque l'accolade ouvrante du for, ce qui fait que seule la première instruction est bouclée.
scores[0];
scores[1];
scores[2];
scores[3];
scores[4];
scores[5];
scores[6];
scores[7];
scores[8];
scores[9];
Ne sert strictement à rien et ne devrait pas compiler.
int[] input = new int[5]; // input here, not where it is now
for(int i=0; i<5; ++i) {
if(input[i] >= 90) ++scores[9];
else
if(input[i] >= 80) ++scores[8];
//(etc)
-> Utilisation de "input" sans qu'une seule valeur ne lui ait été affectée (ça ne devrait pas compiler non plus)
-> manque les accolades pour les branches
-> pré-incrémentation d'une valeur d'un tableau, je ne suis même pas sur du comportement ici. Soit c'est une pré-incrémentation qui se perd dans le néant (ce qui me paraît le plus probable), soit la valeur contenue scores à l'indice correspond est bien incrémentée (possible, mais me paraît improbable).
Que signifie "classer des scores" ?
Si ça équivaut à dire "un utilisateur rentre des valeurs entières et il faut ensuite les afficher par ordre croissant", utilise une Collection (je te laisse chercher laquelle) avec ensuite un appel à la méthode "sort" pour l'ordre naturel (soit un ordre croissant).
Le decile doit contenir des nombre de 0-09 10-19 et ainsi de suite pour atteindre 90-100, et je dois montrer le scores dans chaque decile
Si c'est ça, une simple boucle allant de 0 à 100 avec un formatage pour l'affichage, et c'est terminé.
Message édité le 14 juin 2015 à 19:30:12 par Bunyan