老师,看一下是否正确,那里需要改进?
来源: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的值相等的时候,它就是数水仙花数,并把水仙花数输出。
自己试一试哦,如果帮助到了你,欢迎采纳。
祝学习愉快!
相似问题