用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>

猜你喜欢

转载自blog.csdn.net/weixin_68067009/article/details/124228312