我在用python解决一个模式问题,我需要以一种由X组成的方式打印一个模式,首先按递增顺序填充数字,然后在到达中间数后,它们进入递减顺序,
基本上我做了什么,我找出了X将显示的区域,然后用空格填充剩下的矩阵。
但这不符合我的模式。
以下是我的做法:
n=int(input("Enter total rows"))
#n=5
for rows in range(n):
for cols in range(n):
if((rows == cols) or (rows+cols)==n-1 ):
print(rows,end="")
else:
print(" ",end="")
print()我想做的是:left diagonal and Right diagonal numbers :0 1 2 1 0,但我得到的是:left diagonal and Right diagonal numbers :0 1 2 3 4
发布于 2022-12-02 13:52:00
你可以打印min(rows, n - rows - 1)而不是rows -
n = 5
for rows in range(n):
for cols in range(n):
if((rows == cols) or (rows+cols)==n-1 ):
print(min(rows, n - rows - 1),end="")
else:
print(" ",end="")
print()输出:
0 0
1 1
2
1 1
0 0对于n = 7 -
0 0
1 1
2 2
3
2 2
1 1
0 0对于n = 6 -
0 0
1 1
22
22
1 1
0 0https://stackoverflow.com/questions/74656745
复制相似问题