Учитывая сетку, в которой я знаю количество строк (которое фиксировано), и я знаю текущее количество столбцов (которое может увеличиваться произвольно), как мне вычислить строку и столбец квадрата на его основе? index?
+ + + + +
Cols ---> | 0 | 1 | 2 | 3 | ...
+--+---|---|---|---|---
0 | 0 | 3 | 6 | 9 | ...
+--+---|---|---|---|---
Rows 1 | 1 | 4 | 7 | A | ...
+--+---|---|---|---|---
2 | 2 | 5 | 8 | B | ...
+--+---|---|---|---|---
. . . . . ...
. . . . . .
. . . . . .
Итак, дано:
final int mRowCount = /* something */;
int mColCount;
И дана некоторая функция:
private void func(int index) {
int row = index % mRowCount;
int col = ???
Как мне правильно вычислить col
? Я уверен, что это должно быть функцией количества столбцов и строк. Но мой мозг подводит меня.
Пример: Если index == 4
, то row = 1
, col = 1
. Если index == 2
, то row = 2
, col = 0
.
Спасибо.