在二维数组上找到特定索引

时间:2015-01-23 06:16:03

标签: c# multidimensional-array

我正在创建一个tic tac toe游戏并将棋盘编号为1-x(它是一个动态棋盘,用户可以选择多少行和列)。然后我向用户询问他们希望选择的图块的编号,但是我不确定如何获得与图块相关的数组的索引(二维)。没有它们,我无法将数字从数字更改为X或O

到目前为止我尝试过的事情 Row =(move - 1)%size(因为行和列必须相同) Col =(移动 - 1%大小

它似乎无法一直工作,例如5x5列中的23。它的索引是[4,2]但是当我将它们插入我的方程时,我得到了5.75

1 个答案:

答案 0 :(得分:2)

假设第一行有数字1, 2, ..., numberOfColumns,第二行有数字numberOfColumns + 1, numberOfColumns + 2, ..., 2 * numberOfColumns,依此类推,您可以执行以下操作:

如果用户输入了号码N,那么您可以说

int row = (N - 1) / numberOfColumns;
int column = (N - 1) % numberOfColumns;

rowcolumn将是从零开始的索引。)