老师,看一下是否正确,那里需要改进?
来源:2-17 编程练习
前端大白白
2019-03-14 16:25:34
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>水仙花数</title>
</head>
<body>
<script>
for(var i=0;i<10;i++){
for(var j=0; j<=10; j++){
for(var k=0; k<=10; k++){
var a=i*100+j*10+k,
b=i*i*i+j*j*j+k*k*k;
if(a==b){
document.write(a+"<br/>");
}
}
}
}
</script>
</body>
</html>1回答
同学你好,效果中有一个问题:
1、页面中,多输出了:1 和 0 ,而题目要求的是输出三位数的水仙花数哦。

外层循环如果从0开始的话,计算会多计算出0和1,把外层的初始条件改为1开始即可,参考下图:

2、同学的代码使用了太多的for循环嵌套,代码的可读性不是很好,可以参考老师的建议进行修改,参考下图:

当计算出来的值,跟i的值相等的时候,它就是数水仙花数,并把水仙花数输出。
自己试一试哦,如果帮助到了你,欢迎采纳。
祝学习愉快!
相似问题