/* Siano dati i file input1.txt e input2.txt organizzati come segue: cognome nome #esami voto1 voto2 ... voto#esami il prototipo della classe Studente #define MAX_ESAMI 50 #define MAX_STRINGA 100 class Studente{ char*nome; char*cognome; int *voti; int numEsami; public: Studente(); Studente(const Studente &s); Studente(const char *nome, const *char cognome, int *e); float mediaEsami(); bool operator==(Studente s); Studente operator=(Studente d); void setCognome(const *charc); void setNome(const *charn); void setEsami(int *e); float mediaEsami(); friend ostream & operator<<(ostream &o, Studente s); friend istream & operator>>(istream &i, Studente &s); }; l'operator == si basa sulle medie: due studenti sono uguali se le loro medie differiscono per meno 0.1 la funzione mediaEsami() calcola la media degli esami ed il prototipo delle seguenti funzioni, da implementare: ostream & operator<<(ostream &o, Studente> s); istream & operator>>(istream &o, Studente &s); Scrivere un programma C++ che: 1. Carica i due file in altrettante liste, nell'ordine inverso rispetto a quello in cui sono presenti nel file. 2. Crea una terza lista, ottenuta dalla fusione delle prime due, in cui la seconda lista precede la prima. 3. Crea un file di output in cui vengono memorizzati solo gli studenti che hanno una media inferiore ad un valore da richiedere all'utente nel file di output la struttura della riga sarà: Cognome Nome mediaEsami voto1 voto2 ... voto#Esami Esempi di file di input e output Input1.txt Rossi Alberto 5 22 25 28 27 30 Bianchi Mario 7 18 29 30 20 21 30 25 Verdi Carlo 6 22 23 24 24 28 29 Russo Biagio 8 24 25 25 20 19 18 27 26 Barletta Giovanni 5 20 30 19 19 21 Carlini Gino 4 22 30 23 24 input2.txt D'Agostino Gervaso 5 26 27 26 24 24 Tortora Gennaro 6 23 24 22 30 22 25 Esposito Gennaro 7 27 28 30 29 30 29 30 Mosca Alessandro 6 25 26 26 24 25 22 valore medio: 25 output.txt Bianchi Mario 24.71 18 29 30 20 21 30 25 Russo Biagio 22.57 24 25 25 20 19 18 27 Barletta Giovanni 21.8 20 30 19 19 21 Carlini Gino 24.75 22 30 23 24 Tortora Gennaro 24.33 23 24 22 30 22 25 Mosca Alessandro 24.67 25 26 26 24 25 22 */