• NodeJS打印金字塔和空心金字塔


    代码:

    function printPyramid(totalLevel) {
    	/*
    		打印金字塔
    	    1	 *
    	    2   ***
    	    3  *****
    
    	  规律:
    	  每层 * 个数 = 2n - 1
    	  每层 前空格 = 总层数 - n   (后空格 不用管  直接通过 打印换行实现)
    	*/
    
    	// i 代表层数
    	for (let i = 1; i <= totalLevel; i++) {
    		// j 表示 * 数
    
    		// 打印前空格
    		for( let k =1; k <= totalLevel - i; k++) {
    			process.stdout.write(" ")
    		}
    		// 打印 *
    		for ( let j = 1; j <= 2 * i - 1; j++) {
    			process.stdout.write("*")
    		}
    		console.log()
            // process.stdout.write("\n")
    	} 
    
    	/*
    		打印空心金字塔
    	    1	 *
    	    2   * *
    	    3  *   *
    	    4 *******
    		规律:
    		除了最后一层的*全打印,其余层只打第一个和最后一个*
    	*/
    	console.log()
        // process.stdout.write("\n")
    
    	// i 代表层数
    	for (let i = 1; i <= totalLevel; i++) {
    		// j 表示 * 数
    
    		// 打印前空格
    		for (let k =1; k <= totalLevel - i; k++) {
    			process.stdout.write(" ")
    		}
    		// 打印 *
    		for (let j = 1; j <= 2 * i - 1; j++) {
    			if (j == 1 || j == 2 * i - 1 || i == totalLevel) {
    				process.stdout.write("*")
    			} else {
    				process.stdout.write(" ")
    			}
    		}
    		console.log()
            // process.stdout.write("\n")
    	}
    }
    
    printPyramid(10)
    
    

    output

             *
            ***
           *****
          *******
         *********
        ***********
       *************
      ***************
     *****************
    *******************
    
             *
            * *
           *   *
          *     *
         *       *
        *         *
       *           *
      *             *
     *               *
    *******************
    
  • 相关阅读:
    C#4.0,支持动态语言?
    宁波.NET俱乐部第二次聚会WCF讲稿
    在线学习新编程
    mysql常用函数
    PHP 连接Mysql数据库
    Unix网络编程进阶计划
    RabbitMQ 安装
    Golang 变量
    Golang 结构体
    Golang 指针
  • 原文地址:https://www.cnblogs.com/taohuaya/p/16251763.html
Copyright © 2020-2023  润新知