狂人莫北

导航

 

/*
需求:画一幅图,如下:
        *        
       * *       
      * * *      
     * * * *     
    * * * * *    
   * * * * * *   
  * * * * * * *  
 * * * * * * * * 
* * * * * * * * *
 * * * * * * * * 
  * * * * * * *  
   * * * * * *   
    * * * * *    
     * * * *     
      * * *      
       * *       
        *        

*/

//画一幅图,n为中心点
function draw(n) {
    var max = n * 2; //行尾

    //上面N行,i递减
    for (var i = n; i >= 1; i--) {
        //画*的起始位置为i,结束位置为max - i
        drawLine(i, max - i, max);
    }

    //下面N-1 行,i递增
    for (var i = 2; i <= n; i++) {
        drawLine(i, max - i, max);
    }
}

//画一行
function drawLine(start, end, max) {
    var line = "";
    //一行总共max-1个点
    for (var i = 1; i < max; i++) {
        //如果在start和end范围内,并且是相同的奇偶性,则画*
        if (i >= start && i <= end && i % 2 == start % 2) {
            line += "*";
        } else {
            line += " ";
        }
    }
    console.log(line);
}

draw(11);

  

posted on 2021-05-22 00:34  狂人莫北  阅读(301)  评论(0)    收藏  举报