利用while循环嵌套打印一个高度为5的直角三角和一个菱形,Python
时间: 2024-10-17 16:05:02 浏览: 42
当你想要利用while循环嵌套来打印一个高度为5的直角三角形和一个菱形,你可以这样做:
对于直角三角形:
```python
height = 5
for i in range(1, height + 1):
for j in range(height - i):
print(" ", end="")
for k in range(2 * i - 1):
print("*", end="")
print()
```
这段代码会从上到下逐行打印,每一行的星号数量逐渐增加。
对于菱形:
```python
height = 5
for i in range(1, height + 1):
# 上半部分
if i <= height // 2:
for j in range(height - i):
print(" ", end="")
for k in range(i * 2 - 1):
print("*", end="")
print()
# 下半部分(反转方向)
elif i > height // 2:
for j in range(i - 1):
print(" ", end="")
for k in range((height - i) * 2 - 1):
print("*", end="")
print()
# 转换行向,打印下半部的对称部分
for i in range(height // 2, 0, -1):
for j in range(height - i):
print(" ", end="")
for k in range((i - 1) * 2 - 1):
print("*", end="")
print()
```
这部分代码首先打印出菱形的上半部分,然后通过改变内部循环的方向来完成下半部分,并在最后补全对称的菱形。
阅读全文