<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<script>
for (i = 100; i < 1000; i++) {
if (i == (i % 10) * (i % 10) * (i % 10) + (((i - (i % 10)) / 10) % 10) * (((i - (i % 10)) / 10) %
10) * (((i - (i % 10)) / 10) % 10) + ((i - (i % 10) - (((i - (i % 10)) / 10) % 10)) / 100) * ((
i - (i % 10) - (((i - (i % 10)) / 10) % 10)) / 100) * ((i - (i % 10) - (((i - (i % 10)) /
10) % 10)) / 100)) {
document.write(i);
}
}
</script>
</head>
<body>
</body>
</html>
我的逻辑思维是:1:个位:i对10取余 的三次方
2:十位:i - 个位的数再除以10,得出来的数再对10取余
3:百位:i - 个位 - 十位,得出来的数再除以100
以上的逻辑思维都没有问题(虽然有点繁琐),为什么得出来的i只有一个数:407?
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<script>
for(let i=100;i<=1000;i++){
let ge=i%10;
let shi=Math.floor(i/10%10); // 向上取整(Math.floor)
let bai=Math.floor(i/100);
// 求次方(**)
// 全等(===)
if (i === (ge**3 + shi**3 + bai**3)){
document.write(i,"\n");
}
}
</script>
</body>
</html>
你判断里面的条件语句可以给它优化一下,你这样写不利于检查错误,太过于杂乱