相关文章
主要思想
线性逼近
解决平方根问题
根据公式:
平方根的问题即是 f(x) = x^2 - target // target 即是待求的数。
X
代码
double sqrt(double target) {
double res = target; // 初始化为target。
double threshold = 1e-9;
while (1) {
double cur = res - (res - target / res) / 2; //公式的转化
//cout << cur << endl;
cout << cur << " " << cur - threshold << endl;
if ((cur - res < 0 && cur - res > -threshold) || (cur - res >= 0 && cur - res < threshold)) {
break;
}
res = cur;
}
return res;
}