为了账号安全,请及时绑定邮箱和手机立即绑定

判断数组是否为因子链

判断数组是否为因子链

慕婉清6462132 2022-12-09 16:27:02
我很想知道为什么这段代码没有通过某些测试。它有意不使用任何 ES6 代码。这是提示:*因子链是一个数组,其中每个前一个元素都是下一个连续元素的因子。下面是一个因子链:[3, 6, 12, 36]// 3 is a factor of 6// 6 is a factor of 12// 12 is a factor of 36创建一个确定数组是否为因子链的函数。*我的代码:function factorChain(arr) {    var isChain = true;    for (var i = 0; i < arr.length; i++) {    if ((arr[i + 1] / arr[i]) !== Math.floor(arr[i + 1] / arr[i])) {      isChain = false;                }  }  return isChain;}
查看完整描述

1 回答

?
ITMISS

TA贡献1871条经验 获得超8个赞

您应该循环arr.length - 1访问当前索引处的元素和每次迭代中下一个索引处的元素。使用取余运算符检查一个数字是否是另一个数字的因数可以提高代码的清晰度。此外,无需将结果分配给变量;第一次条件不匹配时简单地返回 false 将退出函数。


function factorChain(arr) { 

  for (var i = 0; i < arr.length - 1; i++) {

    if (arr[i+1] % arr[i] != 0) {

      return false;            

    }

  }

  return true;

}


查看完整回答
反对 回复 2022-12-09
  • 1 回答
  • 0 关注
  • 91 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信