急!!!哪位高手帮忙解决下???

来源:百度知道 编辑:UC知道 时间:2024/09/22 06:56:31
请问牛顿迭代法只能解方程在区间内的一个解吗?如果可以解区间内的所有解,怎么写代码???

都可以解啊

#include<stdio.h>
#include<math.h>
float f(float y)
{
float z;
z=(y*y*y*y+2*y*y*y-y-1)/(4*y*y*y+6*y*y-1);
return(z);
}

void main()
{
float a,b,x0,x1;
a=-2;
b=1;
x0=a;
for(;;)
{
x1=x0-f(x0);
if(fabs(x1-x0)<=0.000001)
{
if(x0<b&&x0>a)
printf("%f\n",x0);break;
}
else
x0=x1;
}
x0=-0.6;
for(;;)
{
x1=x0-f(x0);
if(fabs(x1-x0)<=0.000001)
{
if(x0<b&&x0>a)
printf("%f",x0);break;
}
else
x0=x1;
}
getch();
}

很难定,要大概知道解,用循环指定初值,求出不同的解