请设计二分法算法,求方程:x立方-x-1=0在区间[1,1.5]内的解(精确度0.01)

发布时间:2021-02-25 09:39:55

请设计二分法算法,求方程:x立方-x-1=0在区间[1,1.5]内的解(精确度0.01)

网友回答

//哥哥懒得切换到控制台下写
//就用win32写了个不伦不类的方法出来
//凭着记忆写的,说实话,其他方法都忘记了,就这二分法真的没忘记
//如同俺估计俺死的时候都不会忘记冒泡排序一样.
# include
# include
# pragma warning(disable:4996)
# include
int __stdcall wWinMain( __in HINSTANCE ,__in_opt HINSTANCE ,__in_opt LPWSTR ,__in int )
{double x1 = 1,x2 = 1.5,err = 0.01,c = 0;
double y1 = x1 * x1 * x1 - x1 - 1;
double y2 = x2 * x2 * x2 - x2 - 1;
if(y1 * y2 > 0) ::MessageBox(0,L Are you fucking kiding me?,0,0); //给出的区间内无解
int timesLoop = (int) ceil((log(2.0 * err) / log(0.5) - 1.0));
for(int i = 0; i {c = (x2 - x1) / 2; //二分法的增量
y1 = x1 * x1 * x1 - x1 - 1;
y2 = (x1 + c ) * (x1 + c ) * (x1 + c ) - (x1 + c ) - 1;
if(y2 * y1 x2 = x1 + c;
elsex1 += c;
}wchar_t dsp[56];
swprintf(dsp,LRoot is:%.2f,(x1 + x2) / 2);
::MessageBox(0,dsp,LRoot between [1,1.5].,MB_OK | MB_ICONINFORMATION);
return 0;
}
以上问题属网友观点,不代表本站立场,仅供参考!