用javascript输出杨辉三角到页面上

与杨辉三角联系最紧密的是二项式乘方展开式的系数规律,即二项式定理。但是本文用递归的思想,用更易懂的方式解决这个复杂的数学计算问题。

<!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>Document</title>

    <style>

        div {

            /* 设置样式,让数字居中显示并加上好看的颜色 */

            text-align: center;

            color: whitesmoke;

            background-color: chocolate;

        }

    </style>

</head>

<body>

    <div>

        <script>

            function getTriangle([n, m]) {

                //如果是第一行或者第一列,或者行数等于列数(即每一行最后一个)  值都是1

                if (n == 1 || m == 1 || n == m) return 1

                //利用递归的思想,每一行的每一个等于它前一行的前一列加上前一行的同一列

                return getTriangle([n - 1, m - 1]) + getTriangle([n - 1, m])

            }

            //结合prompt和alert实现交互,防止用户捣乱,故做出判断

            var num = parseInt(window.prompt("请输入你想看的行数"));

            if (num > 0) {

                //循环每一行

                for (let i = 1; i <= num; i++) {

                    //循环每一列

                    for (let j = 1; j <= i; j++) {

                        document.write(getTriangle([i, j]) + "&nbsp;" + "&nbsp;" + "&nbsp;")

                    }

                    //每一行写完后,加上换行符号

                    document.write("<br>")

                }

            } else {

                alert("请输入合适的正整数")

            }

        </script>

    </div>

</body>

</html>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值