Diploma Universitario in Ingegneria Elettronica

Diploma Universitario in Ingegneria Informatica

Fondamenti di Informatica I e II

Prova d'esame del 31 luglio 2000

Domande per chi deve sostenere la prova di Fondamenti I:

1 scrivere il valore in decimale assunto dai seguenti numeri quando si intendano espressi nella rappresentazione in complemento a due:

11111111 10000000

2 dire quali sono i possibili errori numerici che si possono commettere se si utilizza la notazione floating-point nel rappresentare i numeri reali.

3 dato un microprocessore con uno spazio di indirizzamento di 24 bit, dire quale è la quantità di memoria direttamente indirizzabile.

4 un programma contiene le definizioni e assegnazioni iniziali, indicate di seguito:

int i,j=2;

float x=2.5 , y=7.0, z;

determinare il valore delle seguenti espressioni di assegnazione:

z=x+j; i=x+y; i=y/x; z=y/j;

Domande per chi deve sostenere la prova di Fondamenti II:

1 Si decifrino le seguenti sintassi: int (*x())[]; long *(*z()); double *(*t)[];

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

3 Si definisca il concetto di albero derivato di minimo costo.

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

Scrivere un programma, in linguaggio C, che:

Legga e memorizzi i dati contenuti in un file ASCII che, su ciascuna riga, contiene: il simbolo di un elemento chimico, il nome dell'elemento, il relativo numero atomico, il relativo peso atomico e il raggio atomico. Tutti gli elementi sono separati tra di loro tramite il carattere ``&'', ad esempio:

Ag&Argento&47&107.87&1.44

Si&Silicio&14&28.086&1.32

H&Idrogeno&1&1.008&0.32

He&Elio&5&4.003&0.49

Ac&Attinio&89&227&1.88

Iterativamente il programma deve leggere da tastiera un carattere corrispondente ad una operazione da eseguire:

P: il programma deve chiedere (tramite standard input) due numeri interi P1 e P2 con P2>P1 e stampare tutti gli elementi aventi peso atomico compreso tra P1 e P2.

E: il programma chiede il simbolo di un elemento e ne stampa tutti i dati.

C: il programma richiede un peso atomico e stampa i dati dell'elemento corrispondente.

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

Al termine della prova consegnare il prgramma tramite floppy disk; 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 rammenta che il numero di elementi chimici è limitato.

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

Si utilizzi un albero binario di ricerca per la memorizzazione dei dati. Si strutturi l'albero in maniera che in corrispondenza dei comandi che richiedono la stampa di piú elementi questi vengano stampati seguendo l'ordine alfabetico di simbolo chimico.