C++ 中的牛顿法

Newton's Method in C++

我正在尝试在 C++ 源代码中翻译 f(x) = x − e-(x2) 但我保留了得到错误。我试过了:

double f(double x)
{
    exp = pow(-x, 2);
    double result = x - exp;
    return x;

};

有什么见解吗? 如果有帮助,我正在使用 Code::Blocks

#include <math.h>
double f(double x)
{
    return x - exp(-(x*x));
}