codice:case 10: int ma_s,q,s; string no_c;//nome del corso cout<<"inserisci la matricola dello studente"<<endl<<endl; cin>>ma_s; q=tutti_esami[dim_es].ricerca_per_matricola_studente(dim_es,ma_s,0); while(q==0) { cout<<"lo studente con tale matricola non è stato trovato"<<endl; cout<<"reinserisci il numero di matricola"<<endl; cin>>ma_s; q=tutti_esami[dim_es].ricerca_per_matricola_studente(dim_es,ma_s,0); } no_c=tutti_corsi[dim_ins].ricerca_codice_per_titolo(dim_ins,tutti_corsi[q].codice_insegnamento); cout<<"esame: "<<endl<<endl; cout<<"titolo del corso: "<<no_c; cout<<"data dell'esame: "; tutti_corsi[q].stampa_data_esame(cout); tutti_corsi[q].stampa_voto(cout); while(q<dim_es) { s=tutti_esami[dim_es].ricerca_per_matricola_studente(dim_es,ma_s,q); no_c=tutti_corsi[dim_ins].ricerca_codice_per_titolo(dim_ins,tutti_corsi[s].codice_insegnamento); cout<<"esame: "<<endl<<endl; cout<<"titolo del corso: "<<no_c; cout<<"data dell'esame: "; tutti_corsi[s].stampa_data_esame(cout); tutti_corsi[s].stampa_voto(cout); q=s; } if(q==dim_es)cout<<"non sono presenti altri esami sostenuti da quello studente"<<endl; break; case 11: int mat_s,d,w,somma=0,num_voti=0; float media; cout<<"inserisci la matricola dello studente"<<endl<<endl; cin>>mat_s; d=tutti_esami[dim_es].ricerca_per_matricola_studente(dim_es,mat_s,0); while(d==0) { cout<<"lo studente con tale matricola non è stato trovato"<<endl; cout<<"reinserisci il numero di matricola"<<endl; cin>>mat_s; d=tutti_esami[dim_es].ricerca_per_matricola_studente(dim_es,mat_s,0); } somma=somma+tutti_esami[d].voto; num_voti++; while(d<dim_es) { w=tutti_esami[dim_es].ricerca_per_matricola_studente(dim_es,mat_s,d); somma=somma+tutti_esami[w].voto; num_voti++; d=w; } media=somma/num_voti; cout<<"la media dei voti è "<<media; break; case 12: int b,a,num_stu=0,codi_ins; DATA data1,data2; char sep; cout<<"inserisci il codice dell'insegnamento"<<endl<<endl; cin>>codi_ins; cout<<"inserisci la prima data dalla quale vuoi iniziare la ricerca(in questo formato g/m/a)"<<endl<<endl; cin>>data1.giorno>>sep>>data1.mese>>sep>>data1.anno; cout<<"inserisci la seconda data che rappresenta il termine della ricerca(sempre nello stesso formato)"<<endl<<endl; cin>>data2.giorno>>sep>>data2.mese>>sep>>data2.anno; b=tutti_esami[dim_es].ricerca_esame_per_codice_insegnamento(dim_es,codi_ins,0); while(b==0) { cout<<"l'insegnamento con tale codice non è stato trovato"<<endl; cout<<"reinserisci il codice"<<endl; cin>>codi_ins; b=tutti_esami[dim_es].ricerca_esame_per_codice_insegnamento(dim_es,codi_ins,0); } if(data1.giorno<tutti_esami[b].data_esame.giorno<data2.giorno && data1.mese<tutti_esami[b].data_esame.mese<data2.mese && data1.anno<tutti_esami[b].data_esame.anno<data2.anno) { cout<<"l'esame è stato sostenuto dallo studente il cui numero di matricola è: "<<tutti_esami[b].matricola_studente<<endl; num_stu++; } while(b<dim_es) { a=tutti_esami[dim_es].ricerca_esame_per_codice_insegnamento(dim_es,codi_ins,b); if(data1.giorno<tutti_esami[a].data_esame.giorno<data2.giorno && data1.mese<tutti_esami[a].data_esame.mese<data2.mese && data1.anno<tutti_esami[a].data_esame.anno<data2.anno) { cout<<"l'esame è stato sostenuto dallo studente il cui numero di matricola è: "<<tutti_esami[a].matricola_studente<<endl; num_stu++; } b=a; } cout<<"l'esame è stato sostenuto da "<<num_stu<<" studenti"<<endl<<endl; break; case 13: int f,r,codi_in,num_tot=0,somma2=0; float media_es; cout<<"inserisci il codice dell'insegnamento"<<endl<<endl; cin>>codi_in; f=tutti_esami[dim_es].ricerca_esame_per_codice_insegnamento(dim_es,codi_in,0); while(f==0) { cout<<"l'insegnamento con tale codice non è stato trovato"<<endl; cout<<"reinserisci il codice"<<endl; cin>>codi_in; f=tutti_esami[dim_es].ricerca_esame_per_codice_insegnamento(dim_es,codi_in,0); } somma=somma+tutti_esami[f].voto; num_tot++; while(f<dim_es) { r=tutti_esami[dim_es].ricerca_per_matricola_studente(dim_es,mat_s,f); somma=somma+tutti_esami[r].voto; num_tot++; f=r; } media_es=somma2/num_tot; cout<<"la media delle votazioni ottenute da tutti gli studenti in tale esame è: "<<media_es<<endl<<endl; break; case 14: cout<<"operazioni terminate,arrivederci"<<endl<<endl; break; default: cout<<"scelta non valida"; } } while(scelta1!=14); f1.close(); f2.close(); f3.close(); ofstream f4("studenti.txt"); for(int i=0;i<dim_stud;i++) { f4<<tutti_gli_studenti[i].nome; f4.put('/n'); f4<<tutti_gli_studenti[i].cognome; f4.put('/n'); f4<<tutti_gli_studenti[i].data_di_nascita.giorno; f4.put('/'); f4<<tutti_gli_studenti[i].data_di_nascita.mese; f4.put('/'); f4<<tutti_gli_studenti[i].data_di_nascita.anno; f4.put('/n'); f4<<tutti_gli_studenti[i].indirizzo; f4.put('/n'); f4<<tutti_gli_studenti[i].matricola; f4.put('/n'); f4<<tutti_gli_studenti[i].facolta; f4.put('/n'); f4<<tutti_gli_studenti[i].anno_corso; f4.put('/n'); f4<<tutti_gli_studenti[i].email; f4.put('/n'); } f4.close(); ofstream f5("corsi.txt"); for(int i=0;i<dim_stud;i++) { f5<<tutti_corsi[i].nome_corso; f5.put('/n'); f5<<tutti_corsi[i].codice_corso; f5.put('/n'); f5<<tutti_corsi[i].cfu; f5.put('/n'); f5<<tutti_corsi[i].anno; f5.put('/n'); f5<<tutti_corsi[i].semestre; f5.put('/n'); } f5.close(); ofstream f6("esami.txt"); for(int i=0;i<dim_stud;i++) { f6<<tutti_esami[i].matricola_studente; f6.put('/n'); f6<<tutti_esami[i].codice_insegnamento; f6.put('/n'); f6<<tutti_esami[i].data_esame.giorno; f6.put('/'); f6<<tutti_esami[i].data_esame.mese; f6.put('/'); f6<<tutti_esami[i].data_esame.anno; f6.put('/n'); f6<<tutti_esami[i].voto; f6.put('/n'); } f6.close(); return 0; }