带有细节的n × n网格



这是一个家庭作业,把它放在那里。

我试图建立一个n × n的网格,其中第n行和第c列的数字应该是r * c的最后一个数字(我不完全明白这是问什么,所以我也被困在那里)。N是用户提供的

我的主要问题是我不能使网格按我想要的方式工作。

这是我到目前为止的代码:

# get dimension of the digit box
reply = input( "Enter integer: " )
n = int( reply )
# print an n-by-n grid one row at a time.
for r in range(0, n):
# handle printing of the row r entries for the digit box
print(r, end=" ")
print()
for c in range(0, n):
cell = (r * c) % 10
print(c, end=" ")
print()

这是它返回的结果(n = 4):

Enter integer: 4
0 
0 1 2 3 
1 
0 1 2 3 
2 
0 1 2 3 
3 
0 1 2 3 

我不明白为什么这是它返回的,或者怎么做才能使它做我想要的。我知道,如果我想得到它要求的数字,我必须使用%运算符,但我不太知道如何使用它或在哪里使用它,所以我希望到目前为止我做的是正确的。

提前感谢!

编辑:网格应该是这样的:

Enter integer: 4
0 0 0 0 
0 1 2 3 
0 2 4 6 
0 3 6 9 

你打印的是c而不是cell,同时也打印了r.这就是你的代码应该是的样子:

# get dimension of the digit box
reply = input("Enter integer: ")
n = int(reply)
# print an n-by-n grid one row at a time.
for r in range(0, n):
# handle printing of the row r entries for the digit box
# print(r, end=" ") REMOVE THIS
print()
for c in range(0, n):
cell = (r * c) % 10
#   print(c, end=" ") REMOVE THIS
print(cell, " ")
print()

最新更新