JS 实现等腰三角形(空心)和(实心)

 等腰三角形(空心)

             *

            * *

           *   *

          *     *

        // 先实现等腰三角形(实心)

        // 第一行:j=1  打印:三(4-j)个空格,一(2*j-1)个星星

        // 第二行:j=2  打印:两(4-j)个空格,三(2*j-1)个星星

        // 第三行:j=3  打印:一(4-j)个空格,五(2*j-1)个星星

        // 第四行:j=4  打印:零(4-j)个空格,七(2*j-1)个星星

        // ......

        // 步骤一:打印一行:空格+星星

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

            document.write('&nbsp;')

        }

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

            document.write('*')

        }

        // 步骤二:打印四行:每一行都是空格加星星(此为实心)

        for(var row=1;row<=7;row++){

            for(var i=1;i<=(7-row);i++){

                document.write('&nbsp;');

            }

            for(var i=1;i<=(2*row-1);i++){

                document.write('*')

            }

            document.write('<br/>')

        }

        // 步骤三:空心等腰三角形:在原来实心星星的地方,除了首尾,其他都是空格

        for (var row = 1; row <= 7; row++) {

            for (var i = 1; i <= (7 - row); i++) {

                document.write('&nbsp;');

            }

            //星星

            for (var i = 1; i <= (2 * row - 1); i++) {

                if (i == 1 || i == (2 * row - 1)) {

                    document.write('*');

                } else {

                    document.write('&nbsp;');

                }

            }

            document.write('<br/>')

        }

函数方法实现:

function triangle(num) {

            for (var rows = 1; rows <= num; rows++) {

                for (var i = 1; i <= (num - rows); i++) {

                    document.write('&nbsp;');

                }

                for (var i = 1; i <= (rows * 2 - 1); i++) {

                    if (i == 1 || i == (rows * 2 - 1)) {

                        document.write('*');

                    } else {

                        document.write('&nbsp;');

                    }

                }

                document.write('<br>');

            }

        }

        triangle(6);         //此为6行

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。