En análisis numérico, el método de Newton (conocido también como el método de Newton-Raphson o el método de Newton- Fourier) es un algoritmo eficiente para encontrar aproximaciones de los ceros o raíces de una función real. También puede ser usado para encontrar el máximo o mínimo de una función, encontrando los ceros de su primera derivada.
#include<iostream>
#include<cmath>
using namespace std;
/*
para encontrar una raiz real de la ecuacion f(x)=0 propocionar la funcion
F(x) Y su derivada DF(x) y los
DATOS:
X0-->valor inicial
TOL-->tolerancia(convergencia)
EX-->exactitud
MAXIT-->numero maximo de iteraciones
RESULTADOS:
X->la raiz aproximada
*/
double F(double x){//la función
//5*x^3-7*x^2-5-->función como referencia
return 5*pow(x,3)-7*pow(x,2)-5;
}
double DF(double x){//la derivada de la función
return 15*pow(x,2)-14*x;
}
double newton(double X0,double TOL,double EX,int MAXIT){
int cont=1;
double x;
while(cont<MAXIT){
x=X0-F(X0)/DF(X0);
if(abs(x-X0)<TOL)
return x;//raiz encontrada
if(abs(F(x))<EX)
return x;//raiz encontrada
X0=x;
cont=cont+1;
}
return x;
}
int main (int argc, char *argv[]) {
cout<<newton(2,0.000005,0.00005,15);
return 0;
}
SALIDA DEL PROGRAMA:
0 Comment to "Método de Newton(conocido también como el método de Newton-Raphson o el método de Newton-Fourier) en c++"
Publicar un comentario