牛顿迭代法求方程的根

#include <stdio.h>
#include <math.h>
int main()
{
    double a,b,c,d,n,m,x,y;
    while(scanf("%lf,%lf,%lf,%lf",&a,&b,&c,&d)!=EOF)
    {
        x=0;
        m=a*x*x*x+b*x*x+c*x+d;
        n=3*a*x*x+2*b*x+c;
        y=x-m/n;
        while(fabs(x-y)>=1e-5)
        {
        x=y;
        m=a*x*x*x+b*x*x+c*x+d;
        n=3*a*x*x+2*b*x+c;
        y=x-m/n;   
        }
        printf("%.6lf\n",y);
    }
    return 0;
}
x(n+1)=x(n)-f(x(n))/f'(x(n))

posted on 2015-05-05 16:18  l-m  阅读(218)  评论(0编辑  收藏  举报