Está en la página 1de 2

Actividad 3. Módulo 4. Computación.

Raíces de ecuaciones.
Carlos Eduardo Morquecho de la O

1.- Escribe una función para resolver ecuaciones con una variable por el método de NewtoN-
Rapson. Debes implementar el algoritmo, no puedes usar una función como fzero que resuelve de
manera automática.

2.-Escribe un programa que haga uso de la función anterior para resolver los siguientes ejercicios,
debes agregar una función por cada problema y, al final, llamar a cada función para visualizar el
resultado de cada uno(usar un error máximo de 0.01).

a) Encuentre la raíz de la ecuación x –cos(x) = 0.Valores entre 0 y 360.

f1 = @(x) x-cosd(x);
r1 = newtonRapshon(f1,360,0.01)

1.00000
0.99985
0.99985
r1 = 0.9998

b) Encuentre la raíz de la ecuación x *ex= 1que está entre 0 y 1.

f2 = @(x) x * (exp(x))-1;
r2 = newtonRapshon(f2,1,0.01)

0.68394
0.57745
0.56723
0.56714
0.56714
r2 = 0.5671

c) Encuentre una raíz de la ecuación x log10x = 1.2.Valores entre 1 y 10.

f3 = @(x) x*log10(x)-1.2;
r3 = newtonRapshon(f3,10,0.01)

3.86458
2.81807
2.74117
2.74065
2.74065
r3 = 2.7406

d) Encuentre la raíz de la ecuación e0.3x–x2= -4.Valores entre -1 y 10.

f4 = @(x) exp(0.3*x)-(x^2)+4;

1
r4 = newtonRapshon(f4,10,0.01)

4.56758
2.94249
2.50822
2.46965
2.46933
2.46933
r4 = 2.4693

e) Encuentre la raíz de la ecuación () –(√)/ = .Valores entre 1 y 10.

f5 = @(x) 2*cosd(x)-(sqrt(x)/2)-1;
r5 = newtonRapshon(f5,10,0.01)

2.81562
3.86799
3.96132
3.96186
3.96186
r5 = 3.9619

CÓDIGO DE LA FUNCIÓN
function raiz = newtonRapshon(f,i,e)

syms x;
derivada = diff(f,x);
df = str2func(strcat('@(x)',vectorize(derivada)));
xi = i - (f(i)/df(i));
fprintf("%.5f\n",xi)
error = abs((xi-i)/xi)*100;
n= 1;
while error > e
i = xi;
xi = i - (f(i)/df(i));
fprintf("%.5f\n",xi)
error = abs((xi-i)/xi)*100;
n = n +1;
end
raiz = xi;
end

También podría gustarte