function[A,b] = pivot(A,b)
[n,n]=size(A);
for p=1:(n-1)
max=p;
for i=p+1:n
if (abs(A(max,p))<abs(A(i,p))) max=i;
end
end
if(max>p)
for i=p:n
t=A(p,i);
A(p,i)=A(max,i);
A(max,i)=t;
end
t=b(p);
b(p)=b(max);
b(max)=t;
end
for i=p+1:n
tp(i)=A(i,p)/A(p,p);
end
for j=p:n
if (j==p) for k=p+1:n
A(k,p)=0;
end
else
for k=n-p:n
A(k,j)=A(k,j)-A(p,j)*tp(k);
end
end
end
end