w****x 发帖数: 2483 | 1 //Write a program to find the square root of a given numbe
//Binary search again.
double GetSquareRoot(double f, double exp)
{
assert((f > 0.0 || abs(f) < exp) && exp > 0.0);
double dbBeg = 0.0;
double dbEnd = f;
if (f < 1.0) dbEnd = 1.0;
int nCount = 100;
do
{
double dbMid = (dbBeg + dbEnd)/2.0;
double dbSqrDiff = dbMid*dbMid - f;
if (abs(dbSqrDiff) < exp)
break;
if (dbSqrDiff < 0.0)
dbBeg = dbMid;
else
... 阅读全帖 |
|