JS中使用递归输出水仙花数

本文介绍了一种使用JavaScript通过递归算法寻找并输出所有水仙花数的方法。水仙花数是指一个三位数,其各位数字的立方和等于该数本身。通过递归调用函数,从100遍历至999,检查每个数是否为水仙花数,并将其输出。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

JS中使用递归输出水仙花数

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>递归输出水仙花数</title>
    <script type="text/javascript">
        function daffodil(n,m){
            if(n==m){//当递归到n的值和传进来的m的值相等时,便结束递归
                return;
            }
            var a=n%10;//取出三位数的个位数
            var b=parseInt(n/10)%10;//取出三位数的十位数
            var c=parseInt(n/100);//取出三位数的百位数
            //如果这个三位数的每位数的3次方相加的和等于它本身,那这个数就是水仙花数,便输出
            if(Math.pow(a,3)+Math.pow(b,3)+Math.pow(c,3)==n){
                document.write(n+"<br>");
            }
            daffodil(n+1,m);//递归使n的值不断加1
            

        }
        daffodil(100,999)
    </script>
</head>
<body>
    
</body>
</html>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值