Fondamenti di Informatica (SSE)
soluzioni della
prova scritta del 28 giugno 2000
1
Scrivere un programma C per "pulire" una
matrice di interi con R righe e R colonne.
Il programma deve:
·
leggere da tastiera gli interi da memorizzare nella
matrice (guidando l'utente con opportuni messaggi),
·
successivamente spostare verso le prime colonne tutti gli
elementi diversi da 0, mantenendoli nello stesso ordine in cui compaiono
all'interno di ciascuna riga (se si ritiene utile si può utilizzare una matrice
di appoggio, ma si consiglia di evitarlo),
·
stampare, riga per riga, gli elementi diversi da 0.
Esempio:
se viene letta la seguente matrice
9 |
58 |
0 |
0 |
12 |
0 |
5 |
0 |
0 |
0 |
66 |
3 |
55 |
0 |
7 |
32 |
19 |
0 |
0 |
67 |
0 |
0 |
5 |
0 |
22 |
11 |
0 |
9 |
0 |
4 |
5 |
0 |
il programma deve modificare la matrice ottenendo
9 |
58 |
12 |
5 |
0 |
0 |
0 |
0 |
66 |
3 |
55 |
7 |
32 |
0 |
0 |
0 |
19 |
67 |
5 |
0 |
0 |
0 |
0 |
0 |
22 |
11 |
9 |
4 |
5 |
0 |
0 |
0 |
e poi stampare
9 58 12 5
66 3 55 7 32
19 67 5
22 11 9 4 5
Il codice C deve essere completato da una descrizione
succinta dell’algoritmo utilizzato.
2
Illustrare come si definisce e come si richiama una
funzione nel linguaggio C, descrivendo le modalità di passaggio dei parametri.
3
Descrivere l'architettura della Unita Centrale di
Elaborazione (CPU), con particolare riferimento ai registri interni ed al loro
utilizzo durante l'esecuzione di un programma.
4
Illustrare i metodi conosciuti per la soluzione di
equazioni di ricorrenza.