// 求任意整数的平方根
const getSquareRoot = function (int, precise) {
let low = 0, high = int, mid = (low + high) / 2
while ((high - low) >= precise){
const mid = (low + high) / 2
const temp = mid ** 2
if (temp - int > precise) {
high = mid
} else if (int - temp > precise) {
low = mid
} else {
return Math.ceil(mid) ** 2 === int ? Math.ceil(mid) : mid
}
}
return Math.ceil(low) ** 2 === int ? Math.ceil(low) : low
}
console.log(getSquareRoot(1, 0.000001))