#include #include #define eps 1e-6 #define x0 0 #define dx 1e-5 double f(double x) { return (exp(-x)-x); } double df(double x) { return ((f(x+dx)-f(x))/dx); // não preciso saber da função - a questão da derivada numérica é o dx pequeno } // método de newton-rhapson (nada a ver): int main(void) { double x=x0,delta,y; int i,k=0; do { y=x; x=x-f(x)/df(x); k++; delta=(x-y); printf("f(%.15e)=%e \n",x,f(x)); } while (delta>eps); printf("Número de iterações: %d \n",k); return 0; }