Exercici llarg 1: Calculador matricial

Es tracta de fer un programa que permeti operar amb matrius reals de 3x3. Les operacions que s'implementaràn seran la suma, el producte i el determinant. Per organitzar el programa, separeu en un mòdul "matriu3x3.py" les funcions sobre matrius. Per dur-lo a terme seguiu els següents passos:

  1. Dissenyeu i implementeu una funció que llegeixi una matriu real de 3x3. Decidiu com representar la matriu i documenteu la funció convenientment.
  2. Dissenyeu i implementeu una funció que sumi dues matrius de 3x3. Documenteu la funció i afegiu els doctests convenients. Comproveu amb nosetest que es comporta com cal.
  3. Dissenyeu i implementeu una funció que multipliqui dues matrius de 3x3. Documenteu la funció i afegiu els doctests convenients. Comproveu amb nosetest que es comporta com cal.
  4. Dissenyeu i implementeu una funció que calculi el determinant d'una matriu de 3x3. Documenteu la funció i afegiu els doctests convenients. Comproveu amb nosetest que es comporta com cal.
Finalment escriviu un programa, usant les funcions anteriors, que implementi una petita calculadora de matrius. A tal efecte feu que presenti un menú amb les següents opcions:
  • Llegir matriu A
  • Llegir matriu B
  • Calcular A+B
  • Calcular A*B
  • Calcular det(A)

Ampliacions

Com a ampliacions a aquest exercici, considereu les següents:

  • Afegiu al programa anterior la operació de resta de matrius.
  • Afegiu al programa anterior el test de simetria. Això és, una opció que permet saber si una matriu és simètrica respecte a la diagonal principal.
  • Afegiu al programa anterior l'operació de trasposar (intercanviar files per columnes).
  • Afegiu al programa el càlcul de la matriu inversa.