|
Ciao ragazzi !
Avrei bisogno che qualcuno di voi mi aiutasse a fare questo progetto...
Se qualcuno potesse iniziare a compilarlo....Grazie.
Mi serve aiuto nell'impostarlo.
E poi una domanda:
devo creare io un file con i nomi degli studenti, uno con i nomi degli insegnamenti, ecc.. o deve essere l'utente ad inserire tali dati ?
Progetto – "Archivio studenti ed esami" Realizzare un programma C++ che offra funzioni di base per la gestione di un semplice archivio di studenti, insegnamenti ed esami. In particolare, il programma dovrà realizzare le seguenti funzioni: Gestione studenti (a) immissione nuovo studente. Per ogni studente vengono registrate (almeno) le seguenti informazioni: · cognome e nome · matricola · anno di corso (1, 2, 3, …) · data di nascita · recapito · indirizzo e-mail (b) cancellazione o modifica studente (individuato in base alla matricola). È possibile modificare soltanto le informazioni relative al recapito, indirizzo e-mail e anno di corso. (c) elaborazioni e ricerche · ricerca di uno studente in base a matricola/sottostringa del cognome. Se la ricerca ha esito positivo, viene visualizzata la scheda dello studente trovato. Nel caso siano presenti più studenti soddisfacenti i criteri di ricerca, vengono mostrate, una alla volta, le schede di tutti gli studenti individuati. · numero totale/elenco degli studenti iscritti a tutti gli anni/divisi per anni. Gestione insegnamenti (a) immissione nuovo insegnamento. Per ogni insegnamento vengono registrate (almeno) le seguenti informazioni: · titolo dell'insegnamento · codice dell'insegnamento (codice numerico unico, assegnato dal sistema) · CFU · anno e semestre (b) cancellazione o modifica insegnamento (individuato in base al codice). È possibile modificare soltanto le informazioni relative all'anno e al semestre. (c) ricerca di un insegnamento in base a codice/sottostringa del titolo. Se la ricerca ha esito positivo, viene visualizzata la scheda dell'nsegnamento trovato. Nel caso siano presenti più insegnamenti soddisfacenti i criteri di ricerca, vengono mostrate, una alla volta, le schede di tutti gli insegnamenti individuati. Gestione esami (a) registrazione esame. Per ogni esame effettuato da ciascun studente vengono registrate le seguenti informazioni: · studente (matricola) · insegnamento (codice) · data esame · votazione (in trentesimi) (b) elaborazioni e ricerche · per ogni singolo studente (individuato tramite matricola): · stampa elenco esami (titolo corso + data esame + voto) sostenuti dallo studente · calcola media pesata dei voti riportati dallo studente, assumendo come pesi i CFU di ciascun corso · per ogni singolo esame (individuato tramite codice insegnamento): · quanti/quali studenti hanno sostenuto l'esame in un dato intervallo di tempo · media delle votazioni ottenute nell'esame da tutti gli studenti · numero totale esami sostenuti/CFU acquisiti in media dagli studenti di uno specificato anno di corso. Tutti i dati relativi a studenti, insegnamenti ed esami vengono memorizzati in uno o più file. L'interazione con l'operatore avviene tramite menù a più livelli. Il sistema provvede anche ad effettuare controlli sulla correttezza dei dati immessi (ad esempio, codice dell'operazione scelta, validità delle date, ecc.). [Facoltativo] Nel caso in cui si digiti il carattere '?' al posto della matricola di uno studente/codice di un insegnamento viene attivata automaticamente la funzione di ricerca matricola/codice insegnamento in base ad una sottostringa del cognome/titolo insegnamento, senza uscire dalla funzione di immissione. Note di implementazione. Realizzare i tipi di dato relativi al singolo studente e al singolo insegnamento, nonché quelli relativi alla collezione di tutti gli studenti, di tutti gli insegnamenti e di tutti gli esami come classi (obbligatorio). Si suggerisce di definire la classe studente come classe derivata da una classe persona in grado di gestire i dati personali di una singola persona e di realizzare la gestione delle date tramite apposita classe data. Si richiede di realizzare la gestione di eventuali situazioni anomale tramite i meccanismi di gestione eccezioni del C++.
_________________ Riccardo
-Corsair 550W 80plus -SEAGATE Barracuda 1TB -Windows 7 Home Premium 64bit -G.SKILL DDR3 4GB CL7 -GIGABYTE P55-USB3 -Intel CORE i5 760/2.8HGz -Inter-Tech CK-35 Observer Rubber Black Coated ATX-Tower -Gigabyte nVidia 460 1GB DDR5
|