%
% Calcolo Numerico 1 - Milano - Esercizio 3 - 10 luglio 2015
%
clear all 
 
A=[0 1 -1; -1 -1 1; 1 2 -1];
b=[-1 0 2]';
A\b


%     1
%     2
%     3

[L,U,P]=lu(A);

%P =

%     0     1     0
%     1     0     0
%     0     0     1

% P scambia la prima e la seconda riga del sistema

y=L\(P*b);
x=U\y
%     1
%     2
%     3

Q=P;
B=A*Q;
% Q scambia la prima e la seconda colonna di A

[L,U,Ptilde]=lu(B);
y=L\(Ptilde*b);

xstar=U\y;
 %    2
 %    1
 %    3
  
x=Q*xstar

%     1
%     2
%     3
