Diploma Universitario in Ingegneria Elettronica

Diploma Universitario in Ingegneria Informatica

Fondamenti di Informatica I e II

Prova d'esame del 22 febbraio 2000

Domande per chi deve sostenere la prova di Fondamenti I:

1. Rappresentare nella forma complemento a due, su 8 bit, il numero decimale -128.

2. Descrivere il costrutto "struct" del linguaggio C; corredare con esempi.

3. Dire quali sono i compiti principali di un sistema operativo.

4. Descrivere i diversi tipi di memoria elettronica presenti all'interno di un computer

Domande per chi deve sostenere la prova di Fondamenti II:

1. Definizione e principali proprietà di un albero binario di ricerca;

2. Alberi AVL;

3. Rappresentazione degli alberi binari in C;

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

Scrivere un programma in C che:

1. legga due file ASCII contenenti per ciascuna riga un codice numerico, un ``;'' e dei dati anagrafici;

2. ne memorizzi il contenuto in memoria, e

3. scriva tutti i dati letti in un terzo file ordinandoli per codice.

Esempio:

Primo file:

050184;Bonelli Giulio

050203;Carra Vittorio

Secondo file:

052893;Anghinolfi Raffaele

050292;Folli Alberto Maria

053853;Grossi Egidio

053781;Nucci Massimiliano

File di output:

050184;Bonelli Giulio

050203;Carra Vittorio

050292;Folli Alberto Maria

052893;Anghinolfi Raffaele

053781;Nucci Massimiliano

053853;Grossi Egidio

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'unità 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 che il codice abbia una dimensione fissa e che i due file di input siano entrambi ordinati per codice; inoltre si assuma che ogni file di input abbia una dimensione massima prefissata.

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

Si ipotizzi che il codice numerico richieda perlomeno 4 byte per venire memorizzato, quindi si utilizzi l'opportuno tipo di dato per la sua memorizzazione. Non si facciano ipotesi sul numero massimo di righe di ciascun file.