如何从表的行和列数中查找单元格数?

时间:2019-03-11 13:58:40

标签: algorithm

这看起来像是很糟糕的作业,但事实并非如此。我不知道如何正确地称呼它。它会在井字游戏中使用

我有一张3行3列的表。结构看起来像这样

    1 2 3
    - - -
1 | 1 2 3  <---- Cell number
2 | 4 5 6
3 | 7 8 9

我将使用嵌套的for循环为tic-tac-toe创建一个表。例如,当用户单击单元格1时,它将看起来像这样。

    1 2 3
    - - -
1 | O 2 3  <---- Cell number 1 is toggled
2 | 4 5 6
3 | 7 8 9

我有一个问题,我不知道如何在for循环中分配具有正确编号的单元格。我不使用嵌套数组,因为它会使代码太长。

1 个答案:

答案 0 :(得分:2)

在我看来,您不想使用2D阵列。相反,您希望使用单个阵列并像2D阵列那样访问它。这是正确的吗?

这意味着您必须对问题应用一些简单的数学运算。

根据您的描述,您的2D表具有相同的高度和宽度,因此height = width。

如果您希望获取

的索引
index = column + width * row

如果您希望基于索引获取x和y:

column = index % width;
row = index / width;

注意:我尚未将其作为代码进行测试。另外,让我知道是否有帮助。