Università di Napoli Federico II – Facoltà di Ingegneria
Corso di Laurea in Ingegneria Informatica
Corso di Programmazione I - Prof. S. Russo
Esercitazione Guidata n. 3 – Programmazione con TDA
Si definisca un tipo di dati astratto Lista e lo si realizzi mediante implementazione dinamica con
strutture a puntatori.
Il TDA lista preveda le seguente operazioni:
- start (inizializzazione)
- empty (predicato lista piena)
- full (predicato lista vuota)
- push (inserimento in testa)
- top (analisi dell’elemento in testa)
- pop (analisi con rimozione dell’elemento in testa)
- inserisce (inserimento ordinato)
- elimina (eliminazione di un elemento dato)
- elimina_in_testa (eliminazione dell’elemento testa)
- inlist (predicato, vero se un elemento dato e’ presente)
- stampa(stampa di tutti gli elementi nella lista)
Si utilizzi una tecnica di programmazione con tipi di dati astratti, basandosi sui seguenti
meccanismi del linguaggio C++:
compilazione separata
compilazione condizionale (mediante direttive del preprocessore: #infdef, #ifndef, #define,
#endif)
prototipi di funzioni
dichiarazioni di nomi di tipo (con typedef e struct)
strutture (record) con puntatori
allocazione dinamica (con operatori new e delete)
Si realizzi il TDA con una chiara separazione tra interfaccia e implementazione, e si definisca
l’interfaccia in modo che sia compatibile con una implementazione statica.
-
Programmazione 1 - Quesiti vari
-
Programmazione 1 - Esercitazione
-
Programmazione 1 - Esercitazione
-
Programmazione 1 - Esercizi