Python列印矩形 直角三角形 等腰三角形 菱形

2022-06-20 04:03:10 字數 3277 閱讀 5878

思路如下:

(1)先列印乙個星號並換行

print("

*")

(2)列印一行6個星號

for i in range(6):

print("

*", end="

")

(3)列印6列星號

for i in range(6):

print("

*")

(4)列印6行6列

# 每列印一行就換行

print()

(5)金字塔型是由下面圖形轉成的,先列印此圖形

控制內層迴圈的列印。觀察上圖,發現如下規律:

則讓內層迴圈 j<=i,就可以實現。i 控制行數,j 控制列數。比如:當 i=0 時,內層迴圈1次,j=0,j<=i,當 j++ 時,就跳出內層迴圈;當 i=1 時,記憶體迴圈2次,j=0 和 j=1 的情況,當 j=1,j++,則 j=2,j<=i 則不成立,跳出記憶體迴圈。以此類推。

for i in range(6):

for j in range(i+1):

print("

*",end="")

print()

(6)當 j

(7)空格和星號相結合的情況,完整金字塔就是被空格頂過去的。

列印6個空格,後跟星號

for i in range(6):

print("

", end="")

print("

*")

每行5個空格,後跟乙個星號

*")有了以上的基礎,下面分析列印完整金字塔型:

(8)根據下圖所示,我們已經可以列印出左邊的圖形,然後通過控制空格,把它轉成右邊的圖形。

觀察後發現如下規律,右邊圖形相對於左邊的圖形。行數仍然是6行,即 i=6,先不考慮空格的問題,每一行星星的個數,如下所示:

可以得出:j<=(2*i)。當i=0時,j=0,列印乙個星號,必須j<=,參考上面的講解;當i=1時,j=2,因為是j<=i,j取值0,1,2,迴圈三次,列印3個星號。以此類推。

(9)在(8)的基礎上,插入空格。對比發現,如下規律:

再加一層內迴圈,在星號內迴圈的前面,先列印空格,然後再列印相應的星號。

可以得出:k<6-i-1;當 i=0 時,k<5,k取值0,1,2,3,4,迴圈5次,列印5個空格。依次類推。

for i in range(6):

for k in range(5-i):

print("

",end="")

for j in range(2*i+1):

print("

*", end="")

print()

(10)菱形的上半部分已經列印出,下面考慮如何列印下半部分,

最上面的11個星號,已經在上半部分給出,只考慮列印11個星號以下的圖形。如圖:

觀察發現,下半部分共5行,即 i=5 。有如下的規律,如下圖所示:

空格記憶體迴圈,k

(9-3*i)+i,是如何得出?通過數學歸納法,發現:

for i in range(5):

for k in range(i+1):

print("

", end="")

for m in range((9-3*i)+i):

print("

*",end="")

print()

(11)完整的菱形,通過(10)和(11),我們已經可以列印出完整的菱形。

for i in range(6):

for k in range(5-i):

print("

",end="")

for j in range(2*i+1):

print("

*", end="")

print

()for i in range(5):

for k in range(i+1):

print("

", end="")

for m in range((9-3*i)+i):

print("

*",end="")

print()

正直角三角形

在平面直角座標系的第一象限內有m個點。正直角三角形 是一種奇特的三角形,它的三個頂點分別在原點 x軸的正方向和y軸的正方向。請用乙個面積最小的 正直角三角形 將這些點全部圍住,求解面積的大小。題目中所有的座標 包括正直角三角形的頂點座標 都為整數。input 1 m,xi,yi 100 每行乙個答案...

for 迴圈列印直角三角形 正三角形 稜形

熟練掌握 for 迴圈的使用 1 需求 列印直角三角形 如下 左直角 for int i 0 i 5 i system.out.println 右直角 for int i 0 i 5 i for int j 0 j i j system.out.println 執行效果 process finish...

模擬 直角三角形

平面上給定n個兩兩不同的整點,統計以給定的點為頂點,且直角邊平行於座標軸的直角三角形數。輸入格式 輸入檔案right.in第一行為乙個整數n。以下n行,每行給出乙個點的座標。輸出格式 輸出檔名為right.out。輸出乙個整數表示統計結果。輸入樣例 1 0 0 0 11 0 1 1 輸出樣例 1 4...