
function X=Gauss(A,b)
%-----------------------------------------------------------------------
%             -------------                             -------
%             function file                             gauss.m
%             -------------                             -------
%-----------------------------------------------------------------------
%                        ----------------------------
%                        Zeros Reais de Sistemas Lineares
%                        ----------------------------
%                     ---------------------------------------
%                     Metodo de Gauss sem Pivotamento
%                     ---------------------------------------
%
%            Chamada do Procedimento  gauss
%------------------------------------------
%X = gauss(A,B)
%
% Resolve AX=B por eliminação Gaussiana 
%              com pivotação parcial;
%         
% Entrada: A (N x N) matriz dos coeficientes (não singular);
%          B (N x 1) matriz dos termos independentes;
% Saída: X (N x 1) solução de AX=B.
%
%Veja Tambem  gausspiv cramer sor jacobi
%--------------------------------------------------------

n1=size(A);
n2=size(b);

if n1(1)~=n1(2)
    beep
    error('a');
end
if n2(2)>n2(1)
    b=b';
    n2=size(b);
end
if n1(1)~=n2(1)
    beep
    error('inconsistencia');
end

MA=[A,b];

for i=1:n1(1)
    for j=1:n1(1)
        MA(i,:)=MA(i,:)/MA(i,i);
        if i~=j
            MA(j,:)=MA(j,:)-MA(j,i)*MA(i,:);
        end
    end
    MA;
end


X=MA(:,n1(1)+1);
