luizaspan icon

[PROVA FSC_COMP] Exemplo Derivada Numérica

luizaspan | PRO | 11/03/15 12:18:58 PM UTC | 0 ⭐ | 767 👁️ | Never ⏰ | []
C |

560 B

|

None

|

0 👍

/

0 👎

#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 - 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;
}

Comments