查找给定数字的最近平方数

0 javascript math

任务是找到正整数n(取自代码战)的最接近的平方数Nearest_sq(n)。我已经尝试了下面的方法,但是得到一个无限循环。

while(Math.sqrt(n)%1!==0){
    n-- || n++
}
return n;
Run Code Online (Sandbox Code Playgroud)

有人可以指出这段代码在我的逻辑上哪里错吗?

Rob*_*sen 8

这应该非常接近:

const nearest_sq = n => Math.pow(Math.round(Math.sqrt(n)), 2);

console.log(nearest_sq(117)); // 121
console.log(nearest_sq(900)); // 900
console.log(nearest_sq(15)); // 16
Run Code Online (Sandbox Code Playgroud)


小智 5

Python程序求给定数的最接近平方数

from math import sqrt
def nearest_square(num):
         num1 = round(sqrt(num))**2
         return sqrt(num1)
print(nearest_square(48))
Run Code Online (Sandbox Code Playgroud)