一元三次方程怎么求解?方程的解在[0,1]之间,用计算机实现

来源:百度知道 编辑:UC知道 时间:2024/09/23 15:31:55
高手帮帮忙吧!有好的方法,给高分

看精度多少.
反复迭代.也可以反复循环。
如果精度是0.001,同时0.00001就满足停止条件那么就如下。
方程AX^3+BX^2+CX+D=0
那么可以
for(int i=0,i<1000;i++)
{
float X=i/1000;
if(AX^3+BX^2+CX+D>-0.00001 && AX^3+BX^2+CX+D<0.00001)
{
break;
}

}

在0,1之间以0.1为间隔单位逐个搜索,找到最接近的方程的解的x值,然后再搜索区间(上限-下限)/2为单位以x-0.1,x+0.1为区间继续搜索,找到最接近的,如此循环,直到连续二次搜索的值相等或结果满足要求的精度为止。

例如,求解 2X的3次+4 = 58
main()
{
for( int i = 1;; i ++ )
{
if(( 2* i*i*i + 4) == 58)
printf("x的解为%d",i);
}
}

有门课叫 数值方法,专门解决你的问题。

可是用迭代法求解(如:牛顿迭代)近似值.
建议学学数值计算方法这门课