Programming Practice

一棵聖誕樹的畫法可以是一個多層的實心等腰三角形疊在一起,最上層的三角形邊長最小,越往下的三角形邊長越大; 每一個三角形的底部和下一個三角形的頂點重疊在一起。最底部的三角形下面畫一個實心長方形作為樹幹。寫一個 C 語言的程式畫一棵如下所定義的聖誕樹:

  1. 聖誕樹的層數在 2 和 5 之間 (含),

  2. 頂端的三角形邊長在  3 和 6 之間 (含),

  3. 每一個下面三角形的邊長比其上端三角形大 1 至 5 點 (含),

  4. 樹幹的寬是 3 和 9 之間的奇數 (含),

  5. 樹幹的高在 4 到 10之間 (含),

  6. 使用 '#' 作為三角形邊的點和 '@'作為三角形內部的點,

  7. 使用 '|' 作為樹幹的點。

Enter the number of layers (2 to 5): 3

Enter the side of top layer (3 to 6):
4

Enter the growth of each layer (1 to 5):
3

Enter the trunk width (odd number, 3 to 9):
7

Enter the trunk height (4 to 10):
10


                   #
                  #@#
                 #@@@#
                #######
                  #@#
                 #@@@#
                #@@@@@#
               #@@@@@@@#
              #@@@@@@@@@#
             #############
                  #@#
                 #@@@#
                #@@@@@#
               #@@@@@@@#
              #@@@@@@@@@#
             #@@@@@@@@@@@#
            #@@@@@@@@@@@@@#
           #@@@@@@@@@@@@@@@#
          ###################
                |||||||
                |||||||
                |||||||
                |||||||
                |||||||
                |||||||
                |||||||
                |||||||
                |||||||
                |||||||