码迷,mamicode.com
首页 > 其他好文 > 详细

7-18 二分法求多项式单根 (20分)

时间:2020-07-28 22:15:33      阅读:72      评论:0      收藏:0      [点我收藏+]

标签:turn   while   二分   printf   二分法   cin   超时   main   str   

#include<iostream>
#include<cstdio>

using namespace std;

float a, b, c, d;
float l, r;

float clac(float x){
    return a * x * x * x + b * x * x + c * x + d;
}

float find(float l, float r){
    while(r - l > 1e-5){ // 此处注意写1e-8会超时
        float mid = (l + r) / 2;
        float lv = clac(l), mv = clac(mid);
        if(lv * mv <= 0) r = mid;
        else l = mid;
    }
    return (l + r) / 2;
}


int main(){
    cin >> a >> b >> c >> d;
    cin >> l >> r;
    
    printf("%.2f", find(l, r));
    return 0;
}

7-18 二分法求多项式单根 (20分)

标签:turn   while   二分   printf   二分法   cin   超时   main   str   

原文地址:https://www.cnblogs.com/tomori/p/13393487.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!