Javascript:在不使用内置平方根公式的情况下测试完美平方

蓝uc

我是Java语言的新手,并在Codewars上进行了一些测试,我正在编写用于检查完美数字的代码,即,如果一个数字的平方根为整数,则应返回true。这是我的代码,它仅适用于0和1,从这里即使对于完全平方的数字也返回false。我需要了解为什么我的代码无法正常工作,而且我看不到问题出在哪里。

var isSquare = function(n){
      for ( var i=0; i>=0; i++){

      var product= i*i;
      if( product === n ) 
      return true;

      else if(product !==n)
      return false;

      }
    }
一定的表现

每次输入的值不等于被测试的值return false就在运行也就是说,在第一次迭代中,如果不是的话你应该只更小的比测试,并离开了迭代的情形,因为测试是在循环体正在做的:nproductreturn falsen0return falsenproduct

var isSquare = function(n) {
  for (var i = 0;; i++) {
    var product = i * i;
    if (product === n) return true;
    else if (product > n) return false;
  }
}
console.log(isSquare(9));
console.log(isSquare(10));

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

TOP 榜单

热门标签

归档