Diploma Universitario in Ingegneria Elettronica

Diploma Universitario in Ingegneria Informatica

Fondamenti di Informatica II

Verifica intermedia del 31 maggio 2000

Teoria:

Si descrivano i possibili metodi di inserimento in un albero binario di ricerca dettagliandone l'algoritmo. Si discutano anche vantaggi e svantaggi dei vari metodi e se ne indichi la complessità computazionale asintotica.

Esercizio di programmazione da svolgere al computer:

Si sviluppi un programma in ANSI C che:

· legga il file ASCII libri.txt che, riga per riga, contiene un codice ISBN (International Standard Book Number, 10 caratteri), il carattere ``&'', il titolo di un libro, il carattere ``&'', un numero di codice scaffale intero positivo da 1 a 100. Ad esempio:

9810237200&Automatic Vehicle Guidance&451

0521370957&Strutture dati in C&78

0201896834&The Art of Computer Programming: seminumerical algorithms&33

0201896842&The Art of Computer Programming: fundamental algorithms&33

156592861X&Evil Geniuses in a Nutshell (paperback)&84

· memorizzi le informazioni contenute nel file in un albero binario di ricerca usando come chiave il codice ISBN.

· iterativamente richieda un codice e stampi il titolo corrispondente e il codice scaffale.

Il programma deve essere adeguatamente commentato; le prime righe devono contenere i dati anagrafici del candidato, indirizzo di posta elettronica e nome della stazione di lavoro ben evidenziati.

Durante la prova salvare (spesso) il programma nel direttorio radice dell'unità disco F: ; i primi 8 caratteri del nome del candidato rappresenteranno il nome del programma (estensione .C).

Non si facciano ipotesi sulla lunghezza massima dei titoli presenti nel file e di conseguenza si utilizzi allocazione dinamica della memoria.