所以第二个根就是非主流,就是求不出,板子的问题?
查看原帖
所以第二个根就是非主流,就是求不出,板子的问题?
704679
mrHCT楼主2023/3/27 21:18
#include<iostream>
#include<cstdio>
using namespace std;
double a,b,c,d;
double mid;
double N;
int main()
{
    scanf("%lf%lf%lf%lf",&a,&b,&c,&d);
    
    double l=-105.0,r=105.0;
    while(r-l>=0.0001)
    {
        mid=(l+r)/2.0;
        N=a*mid*mid*mid+b*mid*mid+c*mid+d;
        if(N>=0)r=mid;
        else l=mid;
    }
    double x1=l;
    l=x1+0.00001,r=105;
    while(r-l>=0.0001)
    {
        mid=(l+r)/2.0;
        N=a*mid*mid*mid+b*mid*mid+c*mid+d;
        if(N>=0)r=mid;
        else l=mid;
    }
    double x2=l;
    l=x2+0.00001,r=105;
    while(l<r)
    {
        mid=(l+r)/2.0;
        N=a*mid*mid*mid+b*mid*mid+c*mid+d;
        if(N>=0)r=mid;
        else l=mid;
    }
    double x3=l;
    cout<<x1<<" "<<x2<<" "<<x3;
    
    return 0;
}
2023/3/27 21:18
加载中...