function [x]=Gauss(A,b)
% Solución de Ax=b mediante eliminación de Gauss
%
 n=size(A,1); x=zeros(n,1);
 for i=1:n-1           % Transformación de A en n-1 etapas
    [p,maxk]=max(abs(A(i:n,i)));
    maxk=maxk+i-1;
    if i~=maxk
       A([i maxk],:) = A([maxk i],:);
       b([i maxk]) = b([maxk i]);
    end
    j=i+1:n;
            A(j,i) = A(j,i)/A(i,i);
            A(j,j) = A(j,j)-A(j,i)*A(i,j);
            b(j) = b(j)-b(i)*A(j,i);
 end
 for i=n:-1:1         % Sustitución inversa
    x(i)=(b(i)-A(i,i+1:n)*x(i+1:n))/A(i,i);
 end
end
