Diploma Universitario in Ingegneria Elettronica

Diploma Universitario in Ingegneria Informatica

Fondamenti di Informatica I e II

Prova d'esame del 26 luglio 1999

Domande per chi deve sostenere la prova di Fondamenti I:

1. Descrivere la rappresentazione dei numeri in virgola mobile

2. Trattare l'argomento relativo ai codici ridondanti; descrivere il codice di parità e il codice ciclico

3. Dire come avviene il passaggio dei parametri in C, con particolare riferimento alle strutture dati array e puntatori.

Domande per chi deve sostenere la prova di Fondamenti II:

1. Si definisca il concetto di albero binario di ricerca, le relative proprietà e le principali operazioni si introduca inoltre il concetto di albero AVL;

2. Si dimostri che f(n) = a mnm+...+a1n+a0 allora f(n) Î O(nm);

3. Si giustifichi il fatto che un'operazione di ricerca in un vettore non ordinato contenente n dati ha complessità O(n) mentre la ricerca in un albero binario di ricerca ha complessità O(log2(n)).

Esercizio di programmazione da svolgere al computer per Fondamenti I e II:

Sviluppare un programma in linguaggio C che legga e memorizzi i dati contenuti in un file ASCII stud.dat contenente su ogni riga il nome di una persona, il carattere ';' e un numero di matricola, ad esempio:

Rossi Mario ; 605735

Bianchi Sergio ; 125789

Dall'Asta Mauro;3045670

Il programma deve quindi iterativamente richiedere un numero di matricola e stampare a video il relativo nome.

Si crei il file di input mediante un comune editor;

Il programma deve essere adeguatamente commentato; le prime righe devono contenere i dati anagrafici del candidato, ben evidenziati .

Al termine della prova salvare il programma nel direttorio radice dell'unita' disco F: ; i primi 8 caratteri del nome del candidato rappresenteranno il nome del programma (estensione .C).

Per chi deve sostenere la prova di Fondamenti I:

Si memorizzino i dati in un vettore; si ipotizzi un numero massimo di righe euna lunghezza massima per i nomi degli studenti.

Per chi deve sostenere la prova di Fondamenti II (I+II):

Si memorizzino i dati in un albero binario di ricerca senza fare ipotesi sul numero massimo di elementi o sulla lunghezza dei nomi. Si tratti il numero di matricola come un long int e lo si utilizzi come chiave per l'albero binario di ricerca.