用二分法求方程的根(C语言)想问下大家,如何求2*x*x*x-4*x*x+3*x-6=0在(-10,10)内的全部的根,要是全部的根,不能只求 一个,帮忙分析下,并给出源代码 ,

来源:学生作业帮助网 编辑:作业帮 时间:2024/04/28 02:24:59

用二分法求方程的根(C语言)想问下大家,如何求2*x*x*x-4*x*x+3*x-6=0在(-10,10)内的全部的根,要是全部的根,不能只求 一个,帮忙分析下,并给出源代码 ,
用二分法求方程的根(C语言)
想问下大家,如何求2*x*x*x-4*x*x+3*x-6=0在(-10,10)内的全部的根,要是全部的根,不能只求 一个,帮忙分析下,并给出源代码 ,

用二分法求方程的根(C语言)想问下大家,如何求2*x*x*x-4*x*x+3*x-6=0在(-10,10)内的全部的根,要是全部的根,不能只求 一个,帮忙分析下,并给出源代码 ,
刚才那个只能找一个根,现在改了下,可以找所有根:
刚才有个小BUG,改了下::
#include
void FindRoot(void)
{
double dbLeftX = -10.0;
double dbRightX = 10.0;
double dbResultY = 0.0;
double dbTmp = 0.0;
double dbMidleX =0.0;
//当二分点Y的值不为0不是根(即,二分点X不满足方程)
//当区间无限小时完成计算(下面的语句表示当区间不是无限小时继续计算)
while ( abs(dbRightX-dbLeftX) > 0.1e-6 )
{
//二分区间
dbMidleX = ( dbLeftX + dbRightX ) / 2.0;
//算二分点Y的值
dbResultY = 2 * pow(dbMidleX,3) - 4 * pow(dbMidleX,2) + 3 * dbMidleX - 6;
//如果计算的Y值为0时,找到一个根
if ( abs(dbResultY) < 0.1e-6 )
{
printf("Finde a root in [-10,10] ,value = [%lf].\n",dbMidleX);
}
//判断方程的根落于刚才二分区间的哪个区间,并生成新的区间.
if ( dbResultY < 0.0 )
{
dbTmp = 2 * pow(dbLeftX,3) - 4 * pow(dbLeftX,2) + 3 * dbLeftX - 6;
if ( dbTmp < 0.0 )
{
dbLeftX = dbMidleX;
}
else
{
dbRightX = dbMidleX;
}
}
else
{
dbTmp = 2 * pow(dbLeftX,3) - 4 * pow(dbLeftX,2) + 3 * dbLeftX - 6;
if ( dbTmp > 0.0 )
{
dbLeftX = dbMidleX;
}
else
{
dbRightX = dbMidleX;
}
}
}
//区间无限小,如果区间两端计算的Y值一个为正一个为负则区间中点也是一个根
if( 2 * pow(dbLeftX,3) - 4 * pow(dbLeftX,2) + 3 * dbLeftX - 6 < 0 &&
2 * pow(dbRightX,3) - 4 * pow(dbRightX,2) + 3 * dbRightX - 6 >0 )
{
printf("Finde a root in [-10,10] ,value = [%lf].\n",dbMidleX);
}
}

C语言 二分法求方程 C语言表编程:用二分法求一元三次方程的根 要求:又主函数调用求根子函数 设计一个C语言程序:用二分法求方程2x^3-4x^2+3x-6在(-10,10)内的根,用到循环语句 编个C语言程序,用热二分法求方程x^3+4x-10=0 在区间[1,2]内的根(精确到0.00001) 用二分法求方程的根(C语言)想问下大家,如何求2*x*x*x-4*x*x+3*x-6=0在(-10,10)内的全部的根,要是全部的根,不能只求 一个,帮忙分析下,并给出源代码 , 怎么用C语言求二分法 C语言怎么样用二分法求方程的解用二分法求2X^3-4X^2+3X-6=0在(-10,10)之间的根~要求用WIN-TC 用C语言输入一元二次方程的系数a,b,c,采用二分法求方程的根 ,精确到小数点后2位(即误差 c语言 使用二分法求方程额e^x+x=0在(-1,0)之间的根 用二分法求根.用C语言或MATLAB好手在帮忙啊1)用二分法求非线性方程f(x)=x6-5x5+3x4+x3-7x2+7x-20=0在区间[0,5]内的根. ≤10-5.用C语言或MATLAB 用二分法求方程解用二分法求方程f(x) = x3 – x – 1 = 0在区间[1.0,1.5]内的一个实根,要求准确到小数点后的第2位.用C语言实现, matlab二分法编程用二分法求方程的根:x*x+53.99x-0.054=0 编个C语言程序,用二分法求方程x^3+4x-10=0 在区间[1,2]内的根(精确到0.00001)并输出所用的二分次数 c语言二分法求解方程程序 C语言编程二分法6) 用二分法求下面方程在(-10,10)之间的根.2x3-4x2+3x-6=0【提示】(1) 取两个不同点x1、x2,如果f(x1)和f(x2)符号相反,则(x1,x2)区间内必有一个根(曲线与x轴的交点).如果f(x1)与f(x2)同 matlab二分法求方程的根 用二分法求方程的近似解 用二分法求方程的零点