struct Etudiant { int matricule; char nom[10]; double note; }; ifstream creerFichierbin_in(const string& nomDuFichier) { ifstream FicLire(nomDuFichier); return FicLire; } Etudiant* allouerMemoire(const int nbValeur) { return new Etudiant[nbValeur]; } void afficheTableau(span<Etudiant> tab) { int numeroEtudiant = 1; for(auto etudiant: tab){ cout << "Etudiant " << numeroEtudiant << ": "; cout << etudiant.matricule << " " << etudiant.nom << " " << etudiant.note << endl; numeroEtudiant++; } } int nbLigneFichierBin(const string& nomDuFichier) { ifstream ficLireBin = creerFichierbin_in(nomDuFichier); ficLireBin.seekg(0, ios::end); int nbElem; nbElem = ficLireBin.tellg() / sizeof(Etudiant); return nbElem; } void lireFichierBin(const string& nomDuFichier, Etudiant tab[]) { ifstream ficLireBin = creerFichierbin_in(nomDuFichier); ficLireBin.read(reinterpret_cast<char*>(tab), sizeof(Etudiant)); } Etudiant etudiantMeilleurNote(span<Etudiant> tab) { Etudiant meilleurNote; bool first = true; for(auto etudiant: tab){ if(first){ meilleurNote = etudiant; first = false; } if(etudiant.note > meilleurNote.note){ meilleurNote = etudiant; } } return meilleurNote; }
Preview:
downloadDownload PNG
downloadDownload JPEG
downloadDownload SVG
Tip: You can change the style, width & colours of the snippet with the inspect tool before clicking Download!
Click to optimize width for Twitter