***すれ立てるまでもない質問はここで 第6刷***
■ このスレッドは過去ログ倉庫に格納されています
0012132番目の素数さん
NGNGdouble f(double);
double fd(double);
main()
{double x,y;
int imax=5,i;
scanf("%lf",&x);
for(i=1;i<=imax;i++)
{
y=x-f(x)/fd(x);
printf("%lf %lf\n",x,y);
}
}
double f(double x)
{
return (x-5)*(x-3)*(x-1)
}
double fd(double x)
{
return (x-5)*(x-3)+(x-3)*(x-1)+(x-5)*(x-1)
}
ニュートン法で方程式の解の近似値を求めたいのですが、実行して6を入れたりすると、
6.0000 5.7432
6.0000 5.7432
6.0000 5.7432
6.0000 5.7432
6.0000 5.7432
という感じで出力されてしまうのですが、どこがおかしいのでしょうか?
できたら教えていただきたいのですが。
■ このスレッドは過去ログ倉庫に格納されています