Prova al calcolatore

Compito E
Durata: 1:45

Prima parte

La congregazione religiosa ``Adoratorori della Pietra Grezza sotto la Porta di Ishtar'' ha la necessità di informatizzare la gestione dei fedeli delle numerose chiese sparse sul territorio. Per ogni fedele, i dati da memorizzare sono i seguenti:

nome
il nome del fedele (una stringa)
eta
l'età del fedele (un intero)
permanenza
il numero di anni da cui il fedele fa parte della congregazione (intero)
obolo
la cifra totale che il fedele ha finora versato alla congregazione (reale)

Scrivere una classe Fedele i cui oggetti contengono queste variabili di istanza (componenti): nome, eta, permanenza, obolo. La classe deve essere incapsulata, ossia deve avere componenti private e i metodi get e set per tutte le componenti. Deve essere presente il costruttore a quattro argomenti e i metodi toString ed equals


Seconda parte

Per ognuna delle chiese sparse sul territorio, si vogliono memorizzare i dati relativi ai fedeli. Si realizzi la classe Chiesa che rappresenta un insieme di fedeli: usare un array, oppure una LinkedList, oppure un HashSet, oppure una Lista. In tale classe devono essere presenti i seguenti metodi:

static Fedele readFedele(BufferedReader br)
legge i dati di un oggetto Fedele dal BufferedReader passato come argomento, e ritorna questo oggetto; se non è possibile laggere un oggetto a causa della fine del file, si ritorni null
Chiesa(String nomefile)
il costruttore ha come parametro il nome di un file: i dati dei fedeli contenuti nel file vengono letti e memorizzati nella struttura dati usata per la loro memorizzazione
int quantiGiovani(int e)
questo metodo ritorna il numero di fedeli della chiesa la cui età è inferiore al valore e passato come parametro
Fedele piuTirchio()
determina il fedele che ha dato di meno in proporzione al numero di anni di permanenza; in altre parole, quello per il quale il rapporto fra obolo e permanenza è più basso