我正在创建一个tic tac toe游戏并将棋盘编号为1-x(它是一个动态棋盘,用户可以选择多少行和列)。然后我向用户询问他们希望选择的图块的编号,但是我不确定如何获得与图块相关的数组的索引(二维)。没有它们,我无法将数字从数字更改为X或O
到目前为止我尝试过的事情 Row =(move - 1)%size(因为行和列必须相同) Col =(移动 - 1%大小
它似乎无法一直工作,例如5x5列中的23。它的索引是[4,2]但是当我将它们插入我的方程时,我得到了5.75
答案 0 :(得分:2)
假设第一行有数字1, 2, ..., numberOfColumns
,第二行有数字numberOfColumns + 1, numberOfColumns + 2, ..., 2 * numberOfColumns
,依此类推,您可以执行以下操作:
如果用户输入了号码N
,那么您可以说
int row = (N - 1) / numberOfColumns;
int column = (N - 1) % numberOfColumns;
(row
和column
将是从零开始的索引。)