Università degli Studi di Napoli "Federico II"
Corso di Laurea in Ingegneria Informatica e Elettronica
Esame di Programmazione 1
Proff. Russo, Cotroneo
Prova pratica del 27/03/2009
Durata della prova: 90 minuti
Cognome ........................................... Nome ........................................... Matr. ..................................
Indicazioni per lo studente
Lo studente legga attentamente il testo e produca il programma ed i casi di test necessari per dimostrarne il funzionamento.
La mancata compilazione dell'elaborato, la compilazione con errori o l'esecuzione errata dell'algoritmo daranno luogo alla valutazione come prova non superata.
Ricordarsi di indicare Nome, Cognome e matricola su questo stesso foglio, che dovrà essere in ogni caso consegnato alla Commissione.
Al termine della prova lo studente dovrà fare verificare il funzionamento del programma ad un membro della Commissione.
Testo della prova
Si realizzi in linguaggio C++ il tipo di dato astratto CODA mediante l'uso del costrutto class del linguaggio e ricorrendo ad una implementazione dinamica.
Gli elementi della coda siano istanze della classe Persona, che incapsula le seguenti variabili membro:
char* nome;
int eta;
La classe CODA deve fornire le operazioni:
- void inserisci(Persona); //inserimento di una Persona in coda
- bool estrai(); //estrazione di una Persona dalla testa della CODA. //Restituisce false se la coda è vuota, true altrimenti
- void svuota(); //svuota la CODA
- void stampa(); //stampa gli elementi della CODA
- bool cerca(Persona); //cerca una Persona nella CODA. Restituisce true se la //Persona è presente in CODA, false altrimenti.
Realizzare quindi un programma per collaudare la classe realizzata, dotato di un menù principale, così come di seguito suggerito:
Selezione operazione su Coda di Persone:
- Inserisci
- Estrai
- Svuota
- Stampa
- Cerca
opzione >>
Si strutturi il codice dell’intera applicazione (programma principale e classi) secondo le appropriate tecniche di programmazione modulare (illustrate al corso e nei testi adottati).