1#畫樹2#程式執行結果圖:3#
這個樹有多高?:124#
#5####6#
#####7#
#######8#
#########9#
###########10#
#############11#
###############12#
#################13#
###################14#
#####################15#
#######################16#
#1718#
程式部分
1920
#獲取樹冠的層數
21 long = int(input('
這個樹有多高?:'))
22#為最後一行樹幹做預留的變數
23 butt =long24#
初始#號數量
25 hashes = 1
2627
#開始迴圈
28while long >0:29#
第一層的空格等於樹冠的層數,之後依次遞減,因此用迴圈輸出n個空格。
30for i in
range(0, long):31#
由於輸出要求為單行輸出,所以指定print()的結束符為'' , 而不是預設的換行。
32print('
', end='')33
34#輸出過空格後,輸出當前層的#號, 第一層為1個,之後每層遞增2.
35for j in
range(0, hashes):
36print('
#', end='')37
#由於上乙個for迴圈指定了結束符為'', 在這裡需要加乙個換行輸出
38print('')39
#完成一層輸出後,變數賦值,層數遞減1,#號遞增2.
40 long = long - 1
41 hashes = hashes + 2
4243
#完成樹冠輸出後,輸出樹幹部分。樹幹部分和樹冠的第一層是一樣的。44#
這是只輸出乙個#作為樹幹的**。45#
for i in range(0, butt):46#
print(' ', end='')47#
print('#')
4849
#這一塊加點東西,根據樹冠的層數,來決定樹幹的長度,如果小於10層,那麼樹幹是1個#
50if butt < 10:
51for i in
range(0, butt):
52print('
', end='')53
print('#'
)54else:55
#如果樹冠高於10層,那麼樹幹高度= 樹冠高度/4 + 樹冠高度與3取模。
56 ss = ((butt // 4) + (butt % 3))
57while ss >0:
58for j in
range(0, butt):
59print('
', end='')60
print('#'
)61 ss = ss - 1
聖誕樹繪製程式
注 此篇文章要寫的聖誕樹程式,參考於csdn博主badao liumang qizhi的 python實現使用turtle繪製聖誕樹 一文。在此程式裡需要用到的庫有 turtle random time。from turtle import 調畫布 import random 使用隨機數模組 imp...
送你一朵聖誕樹
貪心解決。這種考慮前後順序的題目的常見做法是前後比較將優先順序排序,再用並查集輔助合併。善用stl 如果要維護乙個堆的話,可以用set,最方便,stl的heap太麻煩,優先佇列可能被卡。注意,set中如果自定義了比較函式 還是比較複雜的那種,如本題的貪心 那麼set.find 很有可能re 不是找不...
如何用C語言畫乙個聖誕樹?
我使用了左右映象的sierpinski 每層減去上方一小塊,再用符號點綴。可生成不同層數的 聖誕樹 如下圖是5層的結果。基本 來自sierpinski 的實現,字元的想法來自於code golf draw a sierpinski 更新1 上面的是我嘗試盡量用最少 來畫乙個抽象一點的聖誕樹,因此樹幹...