Diploma Universitario in Ingegneria Elettronica

Diploma Universitario in Ingegneria Informatica


Fondamenti di Informatica I e II


Prova d'esame del 16 novembre 2001


Domande di teoria per Fondamenti I:


  1. Tabelle di verità dell'OR e dello NAND simboli grafici e possibile implementazione in C

  2. Convertire da esadecimale a binario il numero 0x5C8

Domande di teoria per Fondamenti II:


  1. Si indichino e descrivano i due principali errori in cui si può incorrere quando si utilizzano puntatori e/o allocazione dinamica della memoria.

  2. Le rappresentazioni concatenate: vantaggi e svantaggi.


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


Scrivere un programma in C che legga un file contenente l'elenco dei brani musicali di un CD con i relativi tempi di esecuzione in minuti e secondi, come nell'esempio, e dia in output il tempo totale di esecuzione dell'intero CD nella forma h:mm:ss. Si supponga che il tempo di un singolo brano sia inferiore all'ora.


Esempio di file:


4:04 Rotta per casa di Dio

5:50 Una canzone d'amore

3:50 Hanno ucciso l'uomo ragno

4:34 Nella notte


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

Lavorare utilizzando il disco Z:, chiamare il file con il proprio numero di matricola ed estensione .C. Al termine della prova copiare il file (<numeromatricola>.c) nel disco Y: Ad esempio aprire una finestra comandi e digitare il comando: copy <numeromatricola>.c y:



Per chi deve svolgere l'esercizio per Fondamenti di Informatica II:


Memorizzare il contenuto del file (utilizzando una struttura dati a piacere) prima di effettuare il calcolo del tempo totale.

Non si facciano ipotesi sul numero massimo di righe del file.