再学一道算法题: 二分法求多项式单根

简介: 再学一道算法题: 二分法求多项式单根

image.png
废话少说 上代码

float a3,a2,a1,a0;
float f(float x);
int main()
{
    float a,b;
    scanf("%f %f %f %f %f %f",&a3,&a2,&a1,&a0,&a,&b);//输入函数f的系数以及区间a,b的值
    float left,right,mid;
    left=a;//把a的值赋给left,避免了如果要修改a,要一个一个修改的尴尬
    right=b;
    while(right-left>0.001&&f(right)*f(left)<=0)//控制条件
    {
        if(f(left)==0)//当区间左端点为根
        {
            printf("%.2f",left);
            return 0;
        }
         if(f(right)==0)//区间的右端点为根
        {
            printf("%.2f",right);
            return 0;
        }
        mid=(left+right)/2;
        if(f(left)*f(mid)>0)
        {
            left=mid;    
        }else
        {
            right=mid;
        }
    } 
    printf("%.2f",(left+right)/2);
    return 0;
} 
float f(float x)
{
    float f1;
    f1=a3*x*x*x+a2*x*x+a1*x+a0;
    return f1;
}
相关文章
|
6月前
|
机器学习/深度学习 算法 数据挖掘
【MATLAB】数据拟合第10期-二阶多项式的局部加权回归拟合算法
【MATLAB】数据拟合第10期-二阶多项式的局部加权回归拟合算法
154 0
|
5月前
|
数据采集 机器学习/深度学习 人工智能
算法金 | 一个强大的算法模型,多项式回归!!
```markdown # 多项式回归简述 - 多项式回归是线性回归扩展,用于处理非线性关系。 - 通过添加高次项来拟合复杂模式,但可能引发过拟合。 - 示例中展示了如何用Python创建模拟数据,使用`PolynomialFeatures`生成多项式特征,训练线性回归模型并可视化结果。 - 优点:灵活捕捉非线性关系,易于理解。 - 缺点:易过拟合,计算复杂度高。 - 相关概念:正则化(岭回归、Lasso回归)及其他非线性模型(如支持向量回归)。 - 注意事项:选择合适阶数,避免过拟合,重视数据预处理和模型评估。 ```
71 0
算法金 | 一个强大的算法模型,多项式回归!!
|
算法 搜索推荐 C语言
初阶算法(3):二分法的讲解与实现(C语言),以及二分不止光在有序数组中的应用
初阶算法(3):二分法的讲解与实现(C语言),以及二分不止光在有序数组中的应用
180 0
|
算法 C++
c++实现多项式算法
用c++语言实现简单的输出多项式算法
|
Cloud Native 算法 Go
886. 可能的二分法:图+深度优先算法
这是 力扣上的 886. 可能的二分法,难度为 中等。
|
算法 C语言
【C语言】带你玩转经典算法用二分法在一个有序数组中查找某个数
【C语言】带你玩转经典算法用二分法在一个有序数组中查找某个数
196 0
|
算法 索引
从小白开始刷算法 二分法篇 leetcode.74
从小白开始刷算法 二分法篇 leetcode.74
|
算法 索引
从小白开始刷算法 二分法篇 leetcode.162
从小白开始刷算法 二分法篇 leetcode.162
|
算法 索引
从小白开始刷算法 二分法篇 leetcode.35
从小白开始刷算法 二分法篇 leetcode.35
|
算法 索引
从小白开始刷算法 二分法篇 leetcode.704
从小白开始刷算法 二分法篇 leetcode.704