0


JavaScript中for循环小练习之水仙花数

什么是水仙花??

水仙花:水仙花数是指一个3位数,它的每个位上的数字的3次幂之和等于它本身,例如: abc=a a a+b * b b+c c* c

首先第一步:框架

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
    </head>
    <body>
        <script>
            
        </script>
    </body>
</html>

第二步:分析,首先我们根据题目可以知道水仙花是一个3位数,所以我们可以得到一个判断条件就是他是大于100小于1000的

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
    </head>
    <body>
        <script>
            var count = 0;
            
            for (var i = 100; i <= 1000; i++) {
                }

            
        </script>
    </body>
</html>

第三步:这里的话我们如果想进行判断一类的操作,前提是不是要获取到百位,十位,个位,所以上代码进行操作

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
    </head>
    <body>
        <script>
            var count = 0;
            // var num = i;
            for (var i = 100; i <= 1000; i++) {
                // 求百位
                var a = parseInt(i / 100);
                
                }
            
        
        
        </script>
    </body>
</html>

这里的话有个parsenint这个的作用是向上取整,即3.5=3,接下来我们进行十位求法

第四步:十位

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
    </head>
    <body>
        <script>
            var count = 0;
            // var num = i;
            for (var i = 100; i <= 1000; i++) {
                // 求百位
                var a = parseInt(i / 100);
                // 求十位
                var b = parseInt((i % 100) / 10);
                
        
        </script>
    </body>
</html>

这里同样用到了parsenint,同时这里用到了一个取余即%,例153%10=53,所以这里我们就得到了一个两位数,再÷10,就得到了5.3,再取整即5,下面求个位

第五步:个位

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
    </head>
    <body>
        <script>
            var count = 0;
            // var num = i;
            for (var i = 100; i <= 1000; i++) {
                // 求百位
                var a = parseInt(i / 100);
                // 求十位
                var b = parseInt((i % 100) / 10);
                // 求个位
                var c = parseInt(i % 10);
                
        
        </script>
    </body>
</html>

个位的话则就是对10取余,例153%10=3,同样再来一个取整,这样的话我们就获取到了个位,十位,百位,所以接下来就可以进行判断了

第六步:判断

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
    </head>
    <body>
        <script>
            var count = 0;
            // var num = i;
            for (var i = 100; i <= 1000; i++) {
                // 求百位
                var a = parseInt(i / 100);
                // 求十位
                var b = parseInt((i % 100) / 10);
                // 求个位
                var c = parseInt(i % 10);
                // Math.pow代表web里的一个数学函数,即a的3次方
                if (Math.pow(a, 3) ) {
                
        
        </script>
    </body>
</html>

这里用到了一个函数,Math.pow代表web里的一个数学函数,即a的3次方,也可以写a**a

第七步:继续判断

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
    </head>
    <body>
        <script>
            var count = 0;
            // var num = i;
            for (var i = 100; i <= 1000; i++) {
                // 求百位
                var a = parseInt(i / 100);
                // 求十位
                var b = parseInt((i % 100) / 10);
                // 求个位
                var c = parseInt(i % 10);
                // Math.pow代表web里的一个数学函数,即a的3次方
                if (Math.pow(a, 3) + Math.pow(b, 3) + Math.pow(c, 3) == i) {
                    
        
        </script>
    </body>
</html>

第八步:输出

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
    </head>
    <body>
        <script>
            var count = 0;
            // var num = i;
            for (var i = 100; i <= 1000; i++) {
                // 求百位
                var a = parseInt(i / 100);
                // 求十位
                var b = parseInt((i % 100) / 10);
                // 求个位
                var c = parseInt(i % 10);
                // Math.pow代表web里的一个数学函数,即a的3次方
                if (Math.pow(a, 3) + Math.pow(b, 3) + Math.pow(c, 3) == i) {
                    count++
                    console.log(i);

                }
            }
            console.log(count);
        
        </script>
    </body>
</html>

最后:完整代码

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
    </head>
    <body>
        <script>
            var count = 0;
            // var num = i;
            for (var i = 100; i <= 1000; i++) {
                // 求百位
                var a = parseInt(i / 100);
                // 求十位
                var b = parseInt((i % 100) / 10);
                // 求个位
                var c = parseInt(i % 10);
                // Math.pow代表web里的一个数学函数,即a的3次方
                if (Math.pow(a, 3) + Math.pow(b, 3) + Math.pow(c, 3) == i) {
                    count++
                    console.log(i);

                }
            }
            console.log(count);
        
        </script>
    </body>

</html>

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
    </head>
    <body>
        <script>
            var count = 0;
            // var num = i;
            for (var i = 100; i <= 1000; i++) {
                // 求百位
                var a = parseInt(i / 100);
                // 求十位
                var b = parseInt((i % 100) / 10);
                // 求个位
                var c = parseInt(i % 10);
                // Math.pow代表web里的一个数学函数,即a的3次方
                if (Math.pow(a, 3) + Math.pow(b, 3) + Math.pow(c, 3) == i) {
                    count++
                    console.log(i);

                }
            }
            console.log(count);

        </script>
    </body>
</html>


本文转载自: https://blog.csdn.net/tea_tea_/article/details/126272489
版权归原作者 小杨要努力哇 所有, 如有侵权,请联系我们删除。

“JavaScript中for循环小练习之水仙花数”的评论:

还没有评论