A= [1 2 3 ; 2 4 8 ; -1 2 -2] sz = size(A); % Input handling n = sz(1); L = zeros(n,n); p = 1:n; for i = 1:n-1 [maxel, pos] = max(abs(A(i:n,i))); s = pos+i-1; p([i s]) = p([s, i]); A([i s],:) = A([s, i],:); L([i s],:) = L([s, i],:); if A(i,i) ~=0 A(i+1:n, i+1:n) = A(i+1:n, i+1:n) - A(i+1:n,i)/A(i,i) * A(i, i+1:n) end end I = eye(n,n); PM = I(p,:); % Construct permutation matrix triu(A) % Print upper triangular part of A