Você está na página 1de 1

clear; clc; inc=input('\nIngrese el numero de incognitas:'); maxiter=input('Ingrese el numero maximo de iteraciones:'); ncs=input('Ingrese el numero de cifras significativas:'); for i=1:inc

for j=1:inc fprintf('a[%d,%d]=',i,j); a(i,j)=input(' '); while (i==j)&&(a(i,j)==0) if (i==j)&&(a(i,j)==0) fprintf('Ingrese un numero diferente a *0*, debido a que en l a diagonal principal no puede haber *0*\n'); fprintf('a[%i,%i]=',i,j); a(i,j)=input(' '); end end end fprintf('b[%d]=',i); b(i)=input(' '); x0(i)=b(i)/a(i,i); end contador=0; ccn=1; tol=5/10^(ncs+1); while (ccn>=tol)&&(contador<=maxiter) contador=contador+1; for i=1:inc for j=1:inc suma=0; if i~=j suma=suma+a(i,j)*x0(j); end end x1(i)=(b(i)-suma)/a(i,i); end ccn=norm(x1-x0)/norm(x1); x0=x1; end if contador>=maxiter fprintf(' Con %i iteraciones no se logro llegar al resultado',contador); return; end for i=1:inc fprintf('x(%i)=%i\n',i,x1(i)); end fprintf('Se llego al resultado en: %i iteraciones',contador);

Você também pode gostar