这个代码没有语法错误,但是算法上可能有问题。正确的代码应该是:

for (var i = 100; i < 1000; i++) {
  var x = i % 10;
  var y = Math.floor(i / 10) % 10;
  var z = Math.floor(i / 100);

  if (i === x * x * x + y * y * y + z * z * z) {
    document.write(i + ",");
  }
}

其中,第二个 Math.floor 函数可以省略一个 % 10,因为整除后只会剩下整数部分。另外,z 的计算也可以简化,直接将整除结果赋值给 z 即可。

var x=0;y=0;z=0; forvar i=100;i1000;i++ x = i10; y = Mathfloori1010; z = Mathfloori10010; ifi==xxx+yyy+zzz documentwritei+;

原文地址: https://www.cveoy.top/t/topic/fIWE 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录