请帮助我编写一个函数,使用公式计算正实数的平方根:
x i+1 = (1/2) * (xi + (A / x1)),
其中“ A”-输入实数。
在零迭代中,采用下一条语句x0 = A该错误至少应为10-6
输出量
sqrt (2) = 1.414
sqrt (9) = 3
sqrt (25) = 5
您可以采用x i(x
)和x i + 1(x1
)的新值,并检查这些值是否相等。然后结束系列并返回该值。
首先,您需要一个适当的值,例如给定值的一半。
function sqrt(a) {
var x,
x1 = a / 2;
do {
x = x1;
x1 = (x + (a / x)) / 2;
} while (x !== x1);
return x;
}
console.log(sqrt (2)); // 1.414
console.log(sqrt (9)); // 3
console.log(sqrt (25)); // 5
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句