clear clc Q=input('introduzca la matriz= '); b=input('introduzca el vector solucion'); N=size(Q,2)% Numero de columnas F=size(Q,1) A=[Q b'] r=1:F%este vector lo voy a utilizar como base para permutar las filas P=zeros(F-1,F) % FORMA 1 for j=1:F-1 [aij,i]=max(abs(A(j:F,j)))% con esto identifico cual es el numero de mayor modulo y su indice en la columna j-esima r(j)=i+j-1; r(i+j-1)=j A=A(r,:) for k=j+1:F A(k,:)=-(A(k,j)/A(j,j)).*A(j,:)+A(k,:) end P(j,:)=r r=1:F end U1=A % FORMA 2 A=[Q b'] R=zeros(F-1,F) for j=1:F-1 [c,i]=sort(-abs(A(j:F,j)))%cuidado con esto, explicar bien... A=A([1:(j-1) (j-1+i)'],:) for k=j+1:F A(k,:)=-(A(k,j)/A(j,j)).*A(j,:)+A(k,:) end R(j,:)=[1:(j-1) (j-1+i)'] end U2=A(:,1:N) U1=A(:,1:N) %SOLUCION x=zeros(1,N) for g=0:N-1 i=N-g x(i)=(-x(i+1:N)*U2(i,i+1:N)'+A(i,N+1))/A(i,i) end x' y=Q\b' b=A(:,N+1) h=U2\b [L,U,P]=lu(Q)