Bonjour à tous,
j'ai le document suivant :
Tarzan //nom de l'élève
4 //nombre de note
12.5
13.0
11.5
9.0
Zorro
3
15.5
13.0
17.5
Hulk
5
12.5
14.0
9.5
13.0
10.5
Superman
2
16.0
17.0
Ce que je veux faire est de stocker les noms de chaque personne dans un tableau dynamique et faire de même pour les notes de chaque élève. Donc j'ai essayé cela en créant une fonction prenant en argument le fichier ifstream en question, un vector de string et un vector<vector<double> > pour les notes (arguments recommandés par notre professeur) jusqu'ici tout va bien donc, ensuite j'ai essayé une boucle for répétant l'algorithme suivant :
(j'ai déjà choisi le fichier dans une autre fonction)
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
21
22
23
24
25
26
27
28 void processFile(ifstream &inFile, vector<string> &names, vector<vector<double> > &marks) { string name; //nom de l'élève int nombreDeNotes; double noteBis; vector<double> notes; if (inFile) { for (int i=0 ; i<4 ; i++) { getline(inFile,name); //on récupère le nom de l'élève names.push_back(name); //on ajoute ce nom dans le tableau inFile>>nombreDeNotes; //on lit le nombre de note à lire int j=0; while(j<nombreDenotes) { while(inFile>>noteBis) //on lit les notes de l'élève { notes.push_back(noteBis); //que l'on ajoute dans un tableau } j+=1; inFile.ignore(); } marks.push_back(notes); //on ajoute ces tableaux de notes dans un tableau }
Dans la fonction main() j'ai regardé le contenu du tableau names et donc lorsque j'exécute la sortie me donne
tarzan
tarzan
tarzan
tarzan
et donc je ne comprend pas comment faire pour arriver à mettre les notes de chaque élève dans des tableaux différents...
voilà, si quelqu'un pouvait m'éclaircir, j'en serai reconnaissant.
Merci d'avance.
Partager