#include <stdio.h>
#include <math.h>
#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
}
int main(void)
{
double x=x0,delta,y;
int i,k=0;
// for (i=0;i<n;i++) // for (i=0;i<n && f(x)!=0;i++)
// {
// x=x-f(x)/df(x);
// printf("f(%.15e)=%e \n",x,f(x));
// k++;
// if (f(x)==0)
// break;
// }
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;
}
Comments