Diploma Universitario in Ingegneria Elettronica
Diploma Universitario in Ingegneria Informatica
Fondamenti di Informatica I e II
Prova d'esame del 30 novembre 1999
Domande per chi deve sostenere la prova di Fondamenti I:
1. Descrivere la rappresentazione dei numeri in virgola mobile;
2. Descrivere i possibili tipi di variabili in C, in relazione al tempo di vita e alla visibilità;
3. Evidenziare il vantaggio della bufferizzazione nell'uso dei file;
Domande per chi deve sostenere la prova di Fondamenti II:
1. Si descrivano e confrontino i possibili modi di rappresentazione dei grafi;
2. Si dia la definizione di albero;
3. Si descrivano i possibili modi di attraversamento di un albero e per uno di questi si abbozzino le strutture dati e le funzioni necessarie per implementarlo;
Esercizio di programmazione da svolgere al computer per Fondamenti I e II:
Sviluppare un programma in C che legga e memorizzi i dati contenuti in un file ASCII ``tessere.dat'' contenente su ciascuna riga il nome di una persona e un codice numerico separati da un ``;''. Ad esempio:
Bertozzi Massimo ; 5137
Turci Paola ; 7789
Della Rosa Paolo ; 56723
Il programma deve quindi iterativamente richiedere un numero di matricola, stampare a video il relativo nome e rimuovere i relativi dati dall'elenco in memoria. All'inserimento della matricola 0 il programma salvi i nominativi rimanenti e relativo codice numerico in un secondo file ASCII ``rimasti.dat'' utilizzando lo stesso formato del file ``tessere.dat'' e quindi termini.
Si produca il file di input ``tessere.dat'' utilizzando un comune editor di testo.
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 ipotizzi un numero massimo di nominativi, nel file "tessere.dat".
Si memorizzino i dati, in memoria centrale, utilizzando un array di strutture.
Per chi deve sostenere la prova di Fondamenti II (I+II):
Non si facciano ipotesi sul numero di nominativi nel file ``tessere.dat''. Si memorizzino i dati in una lista di strutture allocata dinamicamente. Prima di far terminare il programma si liberi la memoria allocata dinamicamente.