Método de Newton
El método de Newton es un algoritmo para encontrar aproximaciones de los ceros o raíces de una función real.
\[\begin{equation}
x_{n+1} = x_n - \dfrac{f(x_n)}{f'(x_n)}
\end{equation}\]
Calcule \(\sqrt{2}\), sabiendo que \(f(x)=x^2−2\), \(f'(x)=2x\). El número máximo de iteraciones \(N\) y \(x_0\) son entradas del programa.
Solución
# Función
def f(x):
return x ** 2 - 2
# Derivada de función
def df(x):
return 2 * x
# Método de Newton
def metodo_newton(x_0, N):
n = 1 # Para controlar el número de iteraciones
x = x_0 # Valor inicial
while n <= N:
x = x - f(x) / df(x)
n += 1
return x
# Entrada de datos
x_0 = float(input("Ingrese valor inicial: "))
N = int(input("Ingrese numero de iteraciones: "))
# Aproximación
sol = metodo_newton(x_0, N)
# Salida de datos
print("La raiz de 2 es aproximadamente:", sol)