2-13 编程练习作业提交

来源:2-13 编程练习

MiMicccc

2020-09-25 15:17:48

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>水仙花数</title>
</head>
<body>
    <script>
        //  填写代码
        var ge, shi, bai;
        document.write("编程作业里面的 <br />");
        // 编程作业里面的 153 371 407
        for (var i = 100; i < 1000; i++) {
            ge = i - (bai * 100) - (shi * 10);
            shi = parseInt((i - (bai * 100)) / 10);
            bai = parseInt(i / 100);
            if (ge * ge * ge + shi * shi * shi + bai * bai * bai == i) {
                document.write(i + "<br />");
            }
        }
        document.write("<hr>");
        document.write("自己在网上找的 <br />");
        // 在网上找的153 370 371 407
        for (var j = 100; j < 1000; j++) {
            ge = j % 10;
            shi = parseInt(j / 10) % 10;
            bai = parseInt(j / 100);
            if (ge * ge * ge + shi * shi * shi + bai * bai * bai == j) {
                document.write(j + "<br />");
            }
        }
    </script>
</body>
</html>
老师我想问问,我按照任务里面的个十百的提取方法和在网上自己另外找的提取方法这两种方法得到的“水仙花”数有差异,自己在网上找的另外一种方法得到的比任务里面的多了一个数字,这个是怎么回事呢


写回答

1回答

好帮手慕星星

2020-09-25

同学你好,是百位和个位计算顺序的问题。个位计算中用到了百位和十位的变量,但是却在最前面,所以有可能会有漏掉的情况,建议调换位置

http://img.mukewang.com/climg/5f6d9bf0097de89506870294.jpg

这样就是正确的

http://img.mukewang.com/climg/5f6d9bfb099952b302140118.jpg

从网上找的,计算用到的都是变量j,不存在顺序问题

http://img.mukewang.com/climg/5f6d9c21098fe3dc04310166.jpg

祝学习愉快!

0

0 学习 · 40143 问题

查看课程