Prova al calcolatore

Compito D
Durata: 1:45

Riempire il file StudenteId.txt con i propri dati.


Prima parte

L'università di Roma vuole informatizzare il suo sistema (attualmente cartaceo) di verbalizzazione degli esami. Per ogni esame, vanno rappresentati i seguenti dati:

studente
nome dello studente (una stringa)
professore
nome del professore (una stringa)
voto
il voto conseguito dallo studente (un intero)
crediti
un intero che indica il numero di crediti corrispondenti a questo esame

Si realizzi quindi la classe Esame le cui variabili di istanza sono quelle riportate qui sopra. La classe deve essere incapsulata, ossia tutte le variabili di istanza devono essere private e devono essere presenti tutti i relativi metodi get e set. La classe deve inoltre avere il costruttore a quattro argomenti ed i metodi toString ed equals


Seconda parte

Si realizzi la classe Corso: ogni oggetto di questa classe rappresenta un insieme di oggetti Esame. I metodi che questa classe deve avere sono:

Esame readEsame(BufferedReader br) throws IOException
i dati di un oggetto Esame vengono letti dal BufferedReader; il metodo restituisce l'oggetto i cui dati sono quelli letti dal file; il metodo torna null se non è stato possibile leggere i dati dell'esame a causa della fine del file;
Corso(String nomefile) throws IOException
il costruttore legge i dati degli oggetti Esame dal file il cui nome viene passato come argomento
void stampaBocciati()
stampa i nomi degli studenti che sono stati bocciati
double media()
calcola la media dei voti per i soli esami superati (quelli il cui voto è maggiore o uguale di 18; non si tenga conto del numero di crediti)