Fondamenti di Informatica 1
Corso di Laurea in Ingegneria Informatica
Corso di Laurea in Ingegneria Automatica
A.A. 2002/03

Appello del 8/4/2003 - Compito B

Si vuole tenere traccia delle prenotazioni di visite da effettuare presso uno studio medico. Ogni ListaPrenotazioni è associata al tipo di prestazione medica (una stringa) ed è costituita da un insieme ordinato di prenotazioni. Di ogni prenotazione sono di interesse le seguenti informazioni: Si noti che una stessa persona può comparire più volte in una ListaPrenotazioni.

Gli oggetti ListaPrenotazioni supportano le seguenti funzionalità:

Domanda 1. Scrivere una classe Java ListaPrenotazioni per rappresentare oggetti ListaPrenotazioni.

Soluzione: rappresentazione degli oggetti, scheletro della classe, classe ListaPrenotazioni, classe EccezioneListaPrenotazioni

Domanda 2. Realizzare un metodo statico visiteDelMedico cliente della classe ListaPrenotazioni che, dati

scrive sul file fout, per ciascun medico m letto dal file fin, il numero d'ordine e il nome della persona da visitare per tutte le prenotazioni in p riguardanti il medico m, una prenotazione per riga.

Soluzione

Domanda 3. Spiegare la rappresentazione collegata di alberi binari in cui l'informazione in ciascun nodo è un reale. Spiegare l'algoritmo di visita (ricorsiva) in postordine di alberi binari. Facendo uso della rappresentazione collegata, realizzare un metodo statico pubblico che, dato il riferimento alla radice di un albero binario alb i cui nodi contengono reali negativi, restituisca il minimo reale in alb (oppure 0 se l'albero è vuoto).

Soluzione: rappresentazione di alberi binari, metodo richiesto