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.