例1:請利用嵌套for循環生成一個直角三角形圖形 * ** *** **** *****
1 for i in range(1,6): 2 for j in range(0,i): 3 print("*",end="") 4 # 占位讓程序換行 5 print()
思路:總共有5行,就用range(1,6),發現第N行就有N個“*”,每一行的“*”就用range(1,N)來表示,print默認輸出是換行的,要想實現不換行則需在末尾加上end = " ",每一行循環完畢就用print()輸出換行
不用嵌套循環實現:
1 for i in range(1,6): 2 # 第i行就打印i個“*” 3 print("*"*i,end="") 4 print() 5 6 * 7 ** 8 *** 9 **** 10 *****
例2:輸出等邊三角形(三條邊均為5個*)
1 for Index_row in range(1,6): 2 # 打印每一行前面的空格 3 for index_space in range(1,6-Index_row): 4 print(" ",end="") 5 # 打印“* ” 6 for Index_col in range(1,Index_row+1): 7 print("* ",end="") 8 print() 9 10 * 11 * * 12 * * * 13 * * * * 14 * * * * *
思路:總共有5行,就用range(1,6),發現第N行就有N個“* ”+(6-N-1)(PS:若從1開始不是0開始的就是6-N)個空格,每一行的“* ”就用range(1,N+1)來表示,print默認輸出是換行的,要想實現不換行則需在末尾加上end = " ",每一行循環完畢就用print()輸出換行
例3:打印等腰三角形(答案同例1)
例4:打印倒三角形
1 for i in range(1,6): 2 for j in range(6-i,0,-1): 3 print("*",end="") 4 print() 5 6 ***** 7 **** 8 *** 9 ** 10 *