/* * Author: Rak Laptudirm * * https://en.wikipedia.org/wiki/Newton%27s_method * * Finding the square root of a number using Newton's method. */ function sqrt(num, precision = 4) { if (!Number.isFinite(num)) { throw new TypeError(`Expected a number, received ${typeof num}`) } if (!Number.isFinite(precision)) { throw new TypeError(`Expected a number, received ${typeof precision}`) } let sqrt = 1 for (let i = 0; i < precision; i++) { sqrt -= (sqrt * sqrt - num) / (2 * sqrt) } return sqrt } export { sqrt }