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.