老师,寻找喇叭花数的代码那里错误了

老师,寻找喇叭花数的代码那里错误了

<!DOCTYPE html>

<html lang="en">

<head>

    <meta charset="UTF-8">

    <meta http-equiv="X-UA-Compatible" content="IE=edge">

    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    <title>函数数组排序</title>

</head>

<body>

    <script>

        var arr = [5, 2, 9, 1, 8, 6, 35, 23, 15];

        //通过调用soft()方法对数组内的内容进行排序

        arr.sort(function (a, b) {

            if(a > b) {

                return 1;

            } else {

                return -1;

            }

        }

        );

        console.log(arr);



        //寻找喇叭花数

        //计算一个数的阶乘

        function str(n) {

            //书写累乘器

            var a = 1;//累乘器必须是以1开始,因为0乘以任何数都为0

            for(var i = 1; i <= n; i ++) {

                a *= i;

            }

            return a;

            //穷举法从100-999中找出喇叭花数

            for(var i = 100; i < 1000; i ++) {

                //把三位数转换为字符串后拆分

                var i_str = i.toString();

                //用a,b,c表示百位,十位,个位

                var a = Number(i_str[0]);

                var b = Number(i_str[1]);

                var c = Number(i_str[2]);

            }

            if(str(a) + str(b) + str(c) == i) {

                console.log(i);

            }

        }

    </script>

</body>

</html>


正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
好帮手慕慕子 2022-04-19 17:04:55

同学你好, 代码中存在的错误如下:

1、for循环写在了阶乘函数内部

2、if判断语句写在了for语句外部

建议修改:

https://img1.sycdn.imooc.com//climg/625e7b3309a8302707190833.jpg

祝学习愉快~

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师