Escriba un programa que implemente el algoritmo LU para matrices de hasta 20x20, y utilícelo para
obtener la inversa de la matriz dada más adelante. Atienda a las siguientes indicaciones:
1.1 El algoritmo LU está diseñado para utilizarse en aquellos casos en que lo único que cambia es el vector B
en un sistema AX=B, por lo tanto, Ud. NO deberá correr n veces el programa para encontrar la matriz inversa,
sino que dentro de su programa tendrá un ciclo que se repetirá tantas veces como sea necesario (porque
quizás el usuario desee ver la respuesta del sistema ante 10 diferentes vectores B, o quizás el usuario está
utilizando al algoritmo para encontrar la inversa de la matriz A, lo cual implica repetir el algoritmo varias
veces). TIP: utilice como guía al siguiente pseudocódigo:
LEER la matriz A
CALCULAR las matrices L y U
REPETIR
LEER el vector B
CALCULAR el vector X
IMPRIMIR el vector X
HACER preguntar al usuario si desea continuar
MIENTRAS el usuario desee continuar
...
1.2 Su programa deberá tomar en cuenta que NO TODAS LAS MATRICES SON INVERTIBLES, por lo que deberá
agregar una prueba de invertibilidad a su código. TIP: utilice como guía la continuación del pseudocódigo:
...
HACER preguntar al usuario si desea realizar la prueba de invertibilidad
SI la respuesta es afirmativa ENTONCES
HACER ejecutar prueba de invertibilidad
IMPRIMIR el resultado de la prueba de invertibilidad
FIN SI
TIP: No utilice la prueba del determinante, ya que es completamente impráctica para matrices mayores a
3x3; en su lugar haga uso de la definición de matriz inversa.