Bonjour j'ai un problème avec la lecture d'une partie de mon programme j'ai indiquer l'endroit qui est l'affectation des cours j'ai vraiment besoin d'aide
:
Code:#include<iostream> #include<cstring> #include<fstream> #include <string> #include"DossierProfesseur.h" #include"Professeur.h" #include"Cours.h" #include"Etudiant.h" using namespace std; int main() { DossierProfesseur(); system("PAUSE"); } DossierProfesseur::DossierProfesseur() { fstream entree("FP.txt", ios::in); if (entree.is_open()) { cout << " Lefichier est ouvert! /n"; } else // sinon cout << "Impossible d'ouvrir le fichier !" << endl; char *line = new char[10]; int i=0; while (!entree.eof()) { tete = new Professeur; entree >> line; tete->nom = line; line = new char[10]; entree >> line; tete->prenom = line; line = new char[10]; while(i<2) { //entree >> line;// lire une ligne du fichier if (line == "&") // si Ligne est égale au symbole i++; // incrémenter cpt else if (i == 0) // sinon, si cpt est égale a 0 { le problème est ici-> Cours* listecours = new Cours; entree >> line; listecours->sigle == line; // créer un nouveau cours // affecter la ligne a a la bonne variable (sigle) } else if (i == 1) // sinon,si cpt est égale a 1 { tete->listetudiants = new Etudiant; // créer un nouvel étudiant tete->listetudiants->nom = line; // affecter la ligne a la bonne variable ( nom) cout << "Etudiant OK" << endl; } } i = 0; entree.close(); } fstream entree2("FO.txt", ios::in); if (entree2.is_open()) { cout << " Lefichier est ouvert! /n"; } else cout << "Impossible d'ouvrir le fichier !" << endl; while (!entree2.eof()) { char choix; cout << "Entrer votre choix de caracter(-, #, *, %, $)"<<endl; cin >> choix; switch(choix) { case '-': void Supprimer(char* nom, char* prenom); break; case'#': void AfficherLeProfPlusEtudiant() ; break; case'*': void AfficherCoursPlusDemande(); break; case'%': void AfficherNbreProfPourUnCours(char* coursdonne); break; case'$': void recopier(char* FP); break; } } std::cout << "Lecture du fichier encours..." << endl; ifstream fluxEntree("FP.txt"); if (fluxEntree) { string ligne; int i = 1; int cptSeparateur = 0; string name, firstName; bool b = false; bool etud = false; bool profSuivant = false; while (getline(fluxEntree, ligne) && ligne != "") { if (ligne != "&") { if (!b) { //get nom prenom et cours if (i == 1) { name = ligne; // diallo cout << name << endl; } if (i == 2) { firstName = ligne; // Mamadou cout << firstName << endl; } if (i >= 3 && !etud) { // create cours; // INF100 ; INF101 ; INF102 cout << ligne << endl; } i++; } else { if (etud) { cout << ligne << endl; } i++; } } else { // ligne == & b = true; cptSeparateur++; if (cptSeparateur % 2 != 0) { // faisons compteur == 1 etud = true; cout << ligne << endl; } else { profSuivant = true; b = false; i = 1; etud = false; cout << "On passe au prof suivant " << ligne << endl; } } } } } DossierProfesseur::~DossierProfesseur() { while (tete != NULL) { /*tete = tete->suivant; delete tete;*/ } } void DossierProfesseur::Supprimer(char* nom, char* prenom) { /* char prof[10]; cout << " Entrer le nom et prenom du professeur" << endl; cin >> prof; Professeur*prof = tete; if (tete == NULL) cout << "Professeur introuvable "; else { while (tete != NULL) { if ((tete->nom == nom) && (tete->prenom == prenom)) { delete tete; } else tete = tete->suivant; } }*/ } void DossierProfesseur::AfficherLeProfPlusEtudiant() const { } void DossierProfesseur::AfficherCoursPlusDemande() const { } int DossierProfesseur::AfficherNbreProfPourUnCours(char* coursdonne) const { return 0; } void DossierProfesseur::recopier(char* FP) { }
-----