f=@(x) x.^3+94.*x.^2-389.*x+294;
fprima=@(x) 3*x.^2+188*x-389
xx=-99:0.05:4;
yy=f(xx);
plot(xx,yy,xx,zeros(length(xx)))
fprima =
@(x)3*x.^2+188*x-389
x0=1.9;
tol=0.00001;
seguir=true;
while seguir
x1=x0-f(x0)/fprima(x0);
fprintf('x1 = %d \n',x1);
if abs(x0-x1)<tol
seguir=false;
end
x0=x1;
end
x1
f(x1)
disp('Para x0=1.9 se aproxima a la raíz x=1.');
disp('------')
x1 = -2.816309e+000
x1 = -4.547977e-001
x1 = 5.797760e-001
x1 = 9.391361e-001
x1 = 9.982894e-001
x1 = 9.999986e-001
x1 = 1.000000e+000
x1 =
1.0000
ans =
1.9867e-010
Para x0=1.9 se aproxima a la raíz x=1.
------
x0=2.1;
tol=0.00001;
seguir=true;
while seguir
x1=x0-f(x0)/fprima(x0);
fprintf('x1 = %d \n',x1);
if abs(x0-x1)<tol
seguir=false;
end
x0=x1;
end
x1
f(x1)
disp('Para x0=2.1 se aproxima a la raíz x=3');
disp('------')
x1 = 7.307514e+000
x1 = 4.808698e+000
x1 = 3.596823e+000
x1 = 3.113840e+000
x1 = 3.005933e+000
x1 = 3.000018e+000
x1 = 3.000000e+000
x1 = 3
x1 =
3
ans =
0
Para x0=2.1 se aproxima a la raíz x=3
------
x0=2;
tol=0.00001;
seguir=true;
while seguir
x1=x0-f(x0)/fprima(x0);
fprintf('x1 = %d \n',x1);
if abs(x0-x1)<tol
seguir=false;
end
x0=x1;
end
x1
f(x1)
disp('Para x0=2 se aproxima a la raíz x=-98');
x1 = -98
x1 = -98
x1 =
-98
ans =
0
Para x0=2 se aproxima a la raíz x=-98