AcWing 开平方 浮点数二分

#include<iostream>
using namespace std;
int main()
{
    double x;
    cin>>x;
    double l=0,r=x;
    while(r-l>1e-8)  //for(int i=0;i<100;i++)  可以不用精确位数,直接循环100次 
    {
        double mid=(l+r)/2;
        if(mid*mid>=x) r=mid;
        else l=mid;
    }
    printf("%lf\n",l);
    return 0;
}

 

posted @ 2019-10-27 11:31  晴屿  阅读(146)  评论(0)    收藏  举报