程序部分代码如下:
#include
using namespace std;
double fx(double x)
{
return (x*x - x - 2);
}
const double esp = 1.e-5;
double L, R, M, a;
double fL, fM;
double root(double);
int main()
{
cout<< "单调区间左端点L="; cin >> L;
cout << "单调区间右端点R="; cin >> R;
cout << "请输入求解步长:";
cin >> a;
while (1)
{
cout << " 0000" << endl;
if (fx(L)*fx(L + a) > 0)
L = L + a;
else
{
L = L - a;
cout << "①解为:" << root(L) << endl; break;
}
if (L > R)
{
cout << "非有解区间!";
break;
}
}
cout << "11111" << endl;//程序没有运行这一句(当a为0.1之类的数,1等特殊数可以)
}
同学的问题,百思不得其解。程序若a=0.1时,,运行几次后程序就挂了??循环后紧接着的cout一句也没有执行。