%% PARTE 3.
Métodos de solución de Sistemas de Ecuaciones Lineales
%Gauss simple
clear all;
clc;
A=input('MATRIZ A: ');
b=input('MATRIZ B:');
[C,F]=size(A);
[n,~]=size(A);
x=zeros(n,1);
MC=['X';'Y';'Z';'T';'W'];
% Verifica que no haya filas con todos los términos iguales
contar=1;
for t=1:C
for w=1:C-1
if A(t,w)== A(t,w+1)
contar=contar+1;
end
if contar == C
disp('Hay una fila con todos los términos iguales')
disp('Es posible que la natriz sea indeterminada')
break
end
end
if contar == C
break
end
end
%Reorganiza la matriz moviendo las filas de tal forma que cero no
quede en la posición A(1,1)
if A(1,1)==0
for r=1:C-1
if A(1,1)==0
P=A(1,:);
A(1,:)=A(r+1,:);
A(r+1,:)=P;
end
if A(r,1) ~=0
break
end
if r+1==C
r=1;
end
end
end
% Valores para imprimir caracteres X Y Z T
ES=[' '];
MA=[];
% Verifica que la matriz A sea cuadrada
if C~=F
disp('Matriz A no es cuadrda')
end
if A(1,1)==0
disp('Ingrese la matriz de tal forma que el valor A(1,1) sea
diferente de cero');
end
if C==F
for i=1:C
MA(i,1)=MC(i,1);
ES(i,1)=ES(1,i);
end
for i=1:n-1
m= A(i+1:n,i)/A(i,i);
A(i+1:n,:) = A(i+1:n,:) - m*A(i,:);
b(i+1:n,:) = b(i+1:n,:) - m*b(i,:);
end
x(n,:) = b(n,:)/A(n,n);
for i=n-1:-1:1
x(i,:) = (b(i,:)-A(i,i+1:n)*x(i+1:n,:))/A(i,i);
end
x;
x=num2str(x);
x=[MA,ES,x]
end