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