12、编写程序,输出n层正方形图案。正方形图案最外层是第一层,每层用的数字和层数
时间: 2023-12-11 08:00:16 浏览: 65
以下是一个输出n层正方形图案的程序示例:
```python
def draw_squares(n):
for i in range(n):
num = i + 1 # 当前层数的数字
side_length = 2 * n - 1 - 2 * i # 正方形的边长
# 输出上边界
for j in range(side_length):
print(num, end=' ')
print('')
# 输出左右边界
for j in range(side_length - 2):
print(num, end=' ')
for k in range(side_length - 2):
print(' ', end=' ')
print(num, end=' ')
print('')
# 输出下边界
if i < n - 1:
for j in range(side_length):
print(num, end=' ')
print('')
print('')
# 测试
n = int(input("请输入正方形的层数:"))
draw_squares(n)
```
程序首先根据输入的层数n,依次遍历每一层,其中i表示当前层的索引(从0开始)。然后,程序计算当前层的数字和正方形的边长。接下来,程序根据边长输出正方形图案的上边界、左右边界和下边界。
图案示例(n=4):
```
1 1 1 1 1
1 1
1 1
1 1
1 1 1 1 1
2 2 2 2 2
2 2
2 2
2 2
2 2 2 2 2
3 3 3 3 3
3 3
3 3
3 3
3 3 3 3 3
4 4 4 4 4
4 4
4 4
4 4
4 4 4 4 4
```