//我们已经知道 f(1)<0,f(2)>0
double Xmid,Xfront,Xmid;
Xmid=(1+2)/2;
Xfront=1;
Xbehind=2;
Xmid=(1+2)/2;
while(abs(Xfront-Xbehind)>0.5*e-5) //当|x*-xn|<0.5×10-5不成立的时候就循环迭代计算
{
if(Xmid*Xmid*Xmid+4*Xmid*Xmid-10<0) //判断该往哪边迭代。
{
Xmid=(Xmid+Xbehind)/2; //小于0,说明Xmid在这个x*的前面,
Xfront=Xmid; //所以把前面的那个移到Xmid
}
else
{
Xmid=(Xmid+Xfront)/2; //同理
Xbehind=Xmid;
}
}