Как сделать массив тороидальным (оберните снизу вверх и слева направо), т.е. самая левая ячейка считается самой правой ячейкой, например [0] [0] и [5] [5 ] являются одними и теми же ячейками в int array[5][5]
Создание тороидального массива 2D
2
A
ответ
2
«Торидиальность» (если это фактически слово) может быть реализована с помощью функции доступа, которая выполняет сопоставление (с использованием оператора останова деления) вместо операторов скобок на массивы напрямую. Функция может быть реализована следующим образом, где m
и n
- это количество строк и столбцов board
, соответственно.
int GetElement(int i, int j)
{
return board[i % m][j % n];
}
Смежные вопросы
- 1. создание 2D массива векторов
- 2. Создание динамического 2D-массива
- 3. 2D Создание массива дженериков
- 4. Создание массива 2D GtkWidget
- 5. Создание массива 2d массивов
- 6. Создание массива 2D массивов
- 7. Создание случайного 2D-массива
- 8. Создание градиентной карты 2D-массива
- 9. создание массива 2d из строки
- 10. Создание 2D-массива в Javascript
- 11. Произвольное создание массива 2d/3d
- 12. Создание 2d массива векторов, обход
- 13. Создание 2d-массива в Python
- 14. Создание 2D массива в рубин
- 15. Создание нового 2D массива из регулярного массива
- 16. Создание 2d-массива из массива 1d
- 17. Создание 3D-массива из 2D-массива
- 18. Создание нового 2D массив, = размер 2D массива 1 + размер 2d массива 2 (строк и столбцов)
- 19. Создание 2d массив, состоящий из acumulation другого 2d массива
- 20. Создание 2D-массива с использованием getmem
- 21. Создание игрового движка на сетке 2D-массива
- 22. Создание файлов изображений из 2D-массива - JavaScript
- 23. 2D массива: создание, инициализация, и суммируя
- 24. Создание 2D-массива в одном вызове malloc()
- 25. Создание 2D-массива python для хранения данных
- 26. Нужна помощь Создание 2D-массива в C#
- 27. Создание 2D-массива с использованием указателя файла
- 28. Создание 2D-массива с заданными размерами (простой)
- 29. Создание метода на 2D массива в JavaScript
- 30. Создание 2D-массива с 0s и 1s
Так что это должно быть сделано прежде всего перед всеми другими функциями? Создайте тороидальный 2D-массив, а затем мой код, указанный в моем вопросе, будет работать над этим новым тороидальным массивом? –
Это всего лишь эскиз; прямой доступ через '[i] [j]' будет заменен на 'GetElement (i, j)'. Обратите внимание, что может потребоваться дополнительная тонкая настройка, если «i» и «j» разрешены как отрицательные. – Codor
А так, например, 'if (GetElement (i + 1, j + 1) == 1' и т. Д. –