double mysqrt(double x)
{
double s, last;

if (x > 0) {
if (x > 1) s = x; else s = 1;
do {
last = s; s = (x / s + s) / 2;
} while (s < last);
return last;
}
if (x != 0) fprintf(stderr, "mysqrt: domain error\n");
return 0;
}

自家製 sqrt()