请根据以下要求帮我编写python程序:先要求你从键盘输入一个整数n(1<=n<=9),打印出指定的数字图形。如输入5,输出 1 121 12321 1234321 123454321 1234321 12321 121 1
时间: 2024-10-12 14:06:20 浏览: 32
可以使用嵌套循环和字符串连接的方式来实现这个需求。下面是一个简单的Python程序:
```python
def print_number_pattern(n):
# 创建一个空字符串用于存储每一行的结果
pattern = ""
# 从中间开始向外扩展,每次增加一行
for i in range(1, n+1):
# 对于奇数行,数字是从左到右递增
if i % 2 == 1:
# 补充空格使得数字对齐
padding = " " * ((n - 1) // 2)
# 构造当前行的数字部分
num_part = "".join(str(j) for j in range(1, i+1))
pattern += padding + num_part + padding + "\n"
# 对于偶数行,数字是中心递增然后向两边递减
else:
center = str(i // 2)
left_side = center[::-1] # 反转中心数字形成左边的部分
right_side = center # 中心数字本身形成右边的部分
padding = " " * (n - len(center) - 1)
pattern += padding + left_side + center + right_side + padding + "\n"
# 打印整个图案
print(pattern)
# 输入一个整数
n = int(input("请输入一个1到9之间的整数:"))
print_number_pattern(n)
```
当你运行此程序并输入5时,它会按照你所描述的格式输出相应的数字图形。
阅读全文