Bonjour,
je voudrais pour une liste d'enseignants, trouver les notes qu'ils seraient susceptibles d'attribuer d'après leur fréquence, j'ai donc un fichier de note , les notes vont de 0 à 20.
Voici le code que j'écris après avoir ouvert le fichier "notes"
la partie de ce code
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 do { ligne = entree.readLine(); if(ligne==null) break; StringTokenizer tk = new StringTokenizer(ligne); int nt = tk.countTokens(); int j=1-1; int i=1-1; while(j<20) { while(i<nt) { if(j==Integer.parseInt(tk.nextToken())) chiffre[j]++; i++; } j++; entree.close(); }while(ligne!=null);
est fausse je l'ai écrite sans faire attention (i doit partir de 0 pour atteidre le nombre de Tokens dans la ligne et là il continue de s'accroitre et ne rentre plus dans la boucle pour la ligne suivante, mais si j'écris :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 while(j<20) { while(i<nt) { if(j==Integer.parseInt(tk.nextToken())) chiffre[j]++; i++; } j++; }
alors j'obtient l'exception NoSuchElementException à l'execution
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 while(j<20) { while(i<nt) { if(j==Integer.parseInt(tk.nextToken())) chiffre[j]++; i++; } i=0; j++; }
qu'en pensez vous ?
merci,
Philippe
Partager