js判断水仙花数代码实现

IT 文章7天前更新 小编
0 0 0

本文主要讲解关于js判断水仙花数代码实现相关内容,让我们来一起学习下吧!

任务

水仙花数是这样的一个3位数:它的每一个数位的数字的立方和等于它本身。

例如:153=1 * 1 * 1 + 5 * 5 * 5+ 3 * 3 * 3 ,故153是水仙花数。

ad

程序员导航

优网导航旗下整合全网优质开发资源,一站式IT编程学习与工具大全网站

当用户输入一个三位数n,判断这个数字n是不是水仙花数。

思路

当用户输入一个3位数后,需要将这个数字进行拆位,那么如何进行拆位呢?

1、数学方法

百位:n/100在取整;十位:n/10在取整,然后将得到的数字在对10取余;个位:n%10;

ad

AI 工具导航

优网导航旗下AI工具导航,精选全球千款优质 AI 工具集

这里的取整可以使用Math.floor()向下取整(正数)或者使用parseInt()方法直接取整。

2、字符串方法

首先将输入的数字转为字符串,再输入使用charAt()方法,得到每个数位的值。

代码

1、数学方法

<script>
        // 要求用户输入一个三位数
        var n = Number(prompt('请输入一个三位数'));

        // 对用户输入的数值,进行合法性的验证
        if (!isNaN(n) && n >= 100 && n <= 999) {
            // 当用户输入的数字合法
            // 数学方法拆位
            // 百位
            var a = Math.floor(n / 100);
            // var a = parseInt(n / 100);
            // 十位
            var b = Math.floor(n / 10) % 10;
            // var a = parseInt(n / 10) % 10;
            // 个位
            var c = n % 10;
            // 判断
            if (Math.pow(a, 3) + Math.pow(b, 3) + Math.pow(c, 3) == n) {
                alert(n + '是水仙花数');
            } else {
                alert(n + '不是水仙花数');
            }
        } else {
            // 当用户输入的数字不合法
            alert('输入的数字不合法,请重新输入');
        }
    </script>

2、字符串方法

        // 字符串方法拆位
        // 把数字n变为字符串,再去使用字符串的方法charAt():得到指定位置的字符,需要再将其转为数字去参与运算
        var n_str = n.toString();
        // 百位
        var a = Number(n_str.charAt(0)) ;
        // 十位
        var b = Number(n_str.charAt(1)) ;
        // 个位
        var c = Number(n_str.charAt(2)) ;

总结

在做一些算法编程题时,需要有逻辑的梳理好整个编程思路,编写代码时从外到里,从上到下一步一步的完成。

ad

免费在线工具导航

优网导航旗下整合全网优质免费、免注册的在线工具导航大全

以上就是关于js判断水仙花数代码实现相关的全部内容,希望对你有帮助。欢迎持续关注潘子夜个人博客(www.panziye.com),学习愉快哦![readsource]https://juejin.cn/post/7310104657212227611[/readsource]

© 版权声明

相关文章

暂无评论

暂无评论...