利用while循环嵌套打印一个高度为5的直角三角形和一个菱形,Python
时间: 2024-10-16 14:21:54 浏览: 10
当然可以,这里是一个简单的Python代码示例,展示了如何利用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() # 换行
# 打印菱形
middle = height // 2 # 菱形中间部分的宽度
for i in range(middle + 1):
print(" " * (height - 2 * i), end="")
print("*" * (2 * i + 1)) # 上半部分
print(" " * (height // 2)) # 中间的空格
for i in reversed(range(middle)):
print("*" * (2 * i + 1), end=" ")
print(" " * (height - 2 * i - 2)) # 下半部分
```
这个程序首先通过两个外层循环打印出直角三角形,然后内层循环用于填充星号。接着,它会打印一个由星号构成的菱形,分别处理上半部分、中心点以及下半部分。
相关问题
利用while循环嵌套打印一个高度为5的直角三角和一个菱形
当然可以。在Python中,我们可以利用while循环嵌套来打印直角三角形和菱形。这里分别给出两个例子:
**直角三角形:**
```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()
```
运行这个代码将打印出一个高度为5的直角三角形。
**菱形:**
```python
height = 5
for i in range(height):
# 上半部分
if i <= height // 2:
print(' ' * (height - i) + '*' * (2 * i + 1))
# 下半部分
else:
print(' ' * ((i - height // 2) * 2) + '*' * (2 * (height - i) + 1))
# 如果你需要让菱形顶部有一行空白,可以在下半部分循环前添加一行print(" " * height)
```
运行此代码会打印一个高度为5的菱形。
阅读全文