欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

用js代码打印菱形

程序员文章站 2022-06-24 11:34:49
用js代码打印菱形 &l...
用js代码打印菱形
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>
    <input type="text" id="row">
    <input type="button" onclick="test()" value="确定">
</body>
</html>
<script>
    //1、循环行数
    //2、获取每一行星星的个数
    //3、获取每一行空格的数量
    //4、先循环每一行空格的数量,再循环每一行星星的数量
    //5、每一行的空格和星星循环之后,输出换行

    // 2*i-1代表中间一行以上每一行星星的个数
    //2*(row-i+1)-1代表中间一行以下每一行星星的个数
    //(row-x)/2代表空格的数量 x代表星星
    function test(){
        var row = parseInt(document.getElementById('row').value);
        var mid = parseInt(row/2)+1;//mid代表中间一行
        for(var i = 1; i<=row;i++){
            //每一行星星的个数
            if (i<mid) {
                var x = 2*i-1;
            } else{
                var x = 2*(row-i+1)-1;
            }
            //空格的数量
            var k = (row-x)/2;
            //输出每一行空格的数量
            for(var j = k; j > 0; j--){
                document.write('&nbsp;')
            }
            //输出每一行星星的数量
            for(var s = 1; s <= x; s++){
                document.write('*')
            }
            document.write('<br>')
        }
    }
</script>