Esercitazioni
del
corso
di Laboratorio di Calcolo (I) n. 10 uso di funzioni con vettori e matrici
create ex10
(usando il comando mkdir)
spostatevi in ex10 (usando il
comando cd). Solo i files
contenuti in /home/did.../ex10 verranno presi in considerazione!
Scopo dell'esercitazione e' scrivere un programma che inverta una matrice 2x2 e verifichi il risultato mediante il confronto del prodotto della matrice inversa per quella di partenza con la matrice identita'.
Le operazioni verranno svolte da funzioni.
dichiarate 4 matrici 2x2 con elementi double (M, Minv, Test, Id)
inizializzate Id ai valori della matrice identita' e leggete
da tastiera un elemento di M per volta
chiamate una funzione che data la matrice M restituisca la matrice inversa Minv
chiamate una funzione che date due matrici 2x2, M e Minv, ne calcoli la matrice prodotto, Test, e la restituisca
chiamate una funzione che confronti due matrici, Test e Id, e ritorni 0 o 1 a seconda che siano diverse o uguali
un tipico prototipo di una funzione che deve manipolare una matrice e restituirne un'altra puo' essere
int funzioneM(double mIn[2][2],double mOut[2][2]);
l'intero restituito puo' servire a segnalare consizioni di errore (esempio: matrice non invertibile)
NB: data la matrice 2x2
a b
c d
l'inversa
e' definita solo se il
determinante
D=ad-bc e' non nullo ed e' data da