Python---控制檯輸出:空心三角形
阿新 • • 發佈:2019-01-25
- 是的我還是分成了三個部分
- 第一部分和最後一部分都是很容易的,如果理解了空心正方形的話
- 這裡依然選擇長度是20的三角形
- 為了好看,依然用空格隔開,也增加了難度
第一部分
# 在中間列印的*,判斷i迴圈下,i累加到10的時候,就列印*,其他時候列印空格加end不換行
for i in range(1, 20):
if i == 10:
print("*")
break
else:
print(" ", end="")
第二部分
# j迴圈控制行數且控制每行第一個*列印在什麼地方,第二行i==9,第三行i==8,第四行i==7,所以使用j遞減迴圈,
i迴圈每行在哪個位置列印*或者空格。
for j in range(9, 1, -1):
for i in range(1, 20):
if i == j:
print("*", end="")
# 為什麼判斷是20-j,因為當i==j的時候,列印的*是這行列印的第一個*,每行長度是20,最後一個*的位置肯定在20-j的位置,為了對稱。
elif i == 20 - j:
print("*")
break
else:
print(" " , end="")
第三部分
# 和列印正方形的原理是一樣,判斷哪個位置列印*,這裡不同,為了好看,要靈活判斷列印*的位置,這裡i是奇數的時候列印*,是偶數時候是列印*空格
for i in range(1, 20):
if i % 2 != 0:
print("*", end="")
else:
print(" ", end="")