#include #include void LU(const int n, double a[][n], double L[][n], double U[][n]); void inverse(const int n, double A[][n], double InvA[][n]) { int i,j,k,l,m; double L[n][n],U[n][n]; double C[n],z[n],x[n]; LU(n,A,L,U); for(l=0;l0;i--){ for(k=n;k>i;k--){ x[i-1] = x[i-1] - U[i-1][k-1]*x[k-1]/U[i-1][i-1]; } x[i-1] = x[i-1] + z[i-1]/U[i-1][i-1]; } for(i=0;i