Está en la página 1de 2

clear all

clc
disp(' MTODO DE BISECCIN ')
disp('Este programa calcula la raiz de una funcin a traves del mtodo de
biseccin')
disp('')

disp('Para poder llevar a cabo este mtodo se necesita tener conocimiento


grfico previo')
disp('asi que primero graficaremos la funcin')

%SOLICITUD DE DATOS INICIALES


f=input('Ingrese la funcin en terminos de x f(x)= ','s');
x1=input('Ingrese el valor de x1= ');
x2=input('Ingrese el valor de x2= ');
n=input('Ingrese el numero de sub intervalor n= ');

%PROCESO INICIAL
fx=inline(f);
h=(x2-x1)/n; %se calcula el paso
x=x1:h:x2;
k=length(x);
for i=1:k
y(i)=fx(x(i));
end
plot(x,y,'b')
grid on
axis equal
title('GRFICA DE LA FUNCIN')

disp('Al tener los datos de la grafica podemos proceder con')


disp('el mtodo de biseccin')
disp('')
%SOLICITUD DE DATOS PRINCIPALES
a=input('ingrese el valor de la aproximacin a= ');
b=input('ingrese el valor de la aproximacin b= ');
TOL=input('ingrese el valor de la TOL= ');
Nmax=input('ingrese el numero maximo de sub intervalos Nmax= ');
disp(' i a b p ')
for i=1:Nmax
p=(a+b)/2;

if abs(fx(p))<TOL break
end
if fx(a)*fx(p)>0
a=p;
else
b=p;
end
resultados= [i a b p];
disp(resultados)
end

%presentacin de resultados
if i==Nmax
fprintf('El valor de la raiz p= %4.4f con %1.0
iteraciones\n',abs(fx(p)))
else
fprintf('El procedimiento fall con una presicin de %4.4 iteraciones en
p= %1.0f con %4.4 iteraciones\n')
end

También podría gustarte