Saludos, estoy intentando programar el método de newton en C++ desearia que el programa me arroje una tabla donde se aprecie el numero de interación la raíz (xi) y el error para el momento del calculo de esa raíz. tengo el siguiente código, soy nuevo en estos temas no sé si voy por buen camino, agradecería las ideas y sugerencias sobre posibles modificaciones a realizar en el código
#include<stdio.h>
#include<cmath>
#include<math.h>
#include <iostream>
float f(float x);
float df(float x);
int main()
{
int imax,iter;
float error,x0,x1,Ea;
printf ("***METODO DE NEWTON***\n\n");
printf ("\nDigite el primer valor\n");
scanf ("%f",&x0);
printf("\nIntroduce el numero de iteraciones maximas\n");
scanf("%d",&imax);
printf("\nIndique el error minimo deseado\n");
scanf("%f",&error);
printf("\nIter Raiz Error aprox.\n");
Ea=error+1;
iter=0;
do {
iter++;
x1=x0-(f(x0)/df(x0));
Ea=fabs(x0-x1);
printf("\n %d %2.15lf %2.15lf", iter,x1,Ea);
if(Ea<error)
printf("\n\nEl valor aproximado es %2.15f\n\n",x1);
}while(Ea>error && iter<imax);
if(iter==imax) printf("\n\nERROR por numeros de Iteraciones\n\n");
return 0;
printf("\n\n\nEl valor aproximado es %2.20f\n\n",x1);
return 0;
}
double f (double x)
{float f;
f=(sin(x)-cos(x));
return f;
}
double df (double x)
{float df;
df=cos(x)+sin(x);
return df;
}