You are on page 1of 1

xi = input('Limite inferior: ');

xs = input('Limite superior: ');


n = input('Numero de iteraciones: ');
g=9.81;m=68.1;v=40;t=10;
fxi = (((g*m)/xi)*(1-(exp(-((xi/m)*t)))))-v
fxs = (((g*m)/xs)*(1-(exp(-((xs/m)*t)))))-v
fcom = fxi * fxs;
if fcom < 0
xr = (xi + xs) / 2;
fxr = (((g*m)/xr)*(1-(exp(-((xr/m)*t)))))-v
fprintf('xi = %f xs = %f xr = %f \n',xi,xs,xr);
fcom = fxi * fxr;
if fcom > 0
xi = xr;
else
if fcom < 0
xs = xr;
else
raiz = xr;
end
end
fprintf('xi = %f xs = %f xr = %f',xi,xs,xr);
c = 2;
while c <= n
xrant = xr;
xr = (xi + xs) / 2;
ea = ((xr - xrant) / xr) * 100;
if ea < 0
ea = abs(ea);
end
c = c + 1;
fxi = (((g*m)/xi)*(1-(exp(-((xi/m)*t)))))-v
fxs = (((g*m)/xs)*(1-(exp(-((xs/m)*t)))))-v
fxr = (((g*m)/xr)*(1-(exp(-((xr/m)*t)))))-v
fcom = fxi * fxr;
if fcom > 0
xi = xr;
else
if fcom < 0
xs = xr;
else
raiz = xr;
end
end
fprintf('\n c = %f xi = %f xs = %f xr = %f fxi = %f fxs = %f fxr
= %f error = %f',c,xi,xs,xr,fxi,fxs,fxr,ea);
end
else

disp('El metodo no aplica...');

end

You might also like