SDAU 練習二 10001

 這是一個典型的二分法題目,題目還是不是很難的這個方程答案和y比較,精度爲1e-6,
題目就是給你一個方程,和它的結果,讓你求X。步驟很容易,就是利用二分法,一點一點求。
#include <cstdio>
#include<iostream>
#include<stdio.h>
#include<vector>
#include<algorithm>
#include<numeric>
#include<math.h>
#include<string.h>
#include<map>
#include<set>
#include<vector>
#include<iomanip>
using namespace std;
double eqa(double x)
{
    return 8*x*x*x*x+7*x*x*x+2*x*x+3*x+6;
}
int main()
{
    //freopen("r.txt","r",stdin);
    double x,y,r,l,mid;
    int N;
    cin>>N;
    while(N--)
    {


        cin>>y;
        if(eqa(0)>y||eqa(100)<y)
        {
            cout<<"No solution!"<<endl;
            continue;
        }
        r=100;
        l=0;
        while((r-l)>0.00000001)
        {
            mid=(r+l)/2;
            if(eqa(mid)>y) r=mid;
            else l=mid;
        }
        printf("%.4f\n",mid);
    }


}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章