实现两位数精度
#include<stdio.h>
double sqrtss(double src)
{
double mid,low,high;
low = 0.0;
if(src>1.0)
high = src;
else
high = 1.0 ;
mid = (low + high)/2.0;
while(1)
{
if((src - mid*mid)<EPSION&&(src - mid*mid)>-EPSION)
return mid;
if(src > mid*mid)
low = mid;
else
high = mid;
mid = (high + low)/2.0;
}
}
int main()
{
float src;
while(~scanf("%f",&src))
{
printf("%.6f\n",sqrtss(src*1.0));
}
return 0;
}