Задать вопрос

Как вычислить положение элемента массива в матрице на основании его индекса и размерности матрицы?

Доброй ночи.
Есть массив элементов (по факту - записи из базы), и есть количество элементов в строке - N. В цикле проходим по массиву, если текущий элемент (i) равен N, начинаем новую строку. В общем-то типичная картина для огромного числа сайтов.

Я хочу сделать возможность выводить элементы с другим порядком - не в строку, а в столбец, но при этом сохраняя html \ css структуру (флекс отпадает, таким образом). Например, если в построчном варианте второй элемент по факту имел индекс 2 (т.е. был на втором месте в строке), в постолбцовом он будет иметь индекс 5, и располагаться в начале второй строки (т.е. второй в первом столбце). Однако, к примеру, если у нас 10 элементов и N равен 4м, то 6й элемент так и останется по факту шестым, так что арифметически подгадать весьма проблематично.

Я пока что вижу только вариант преобразовать массив в матрицу, и затем повернуть ее на 90 градусов, а то и вовсе намудрить с вложенными циклами, но это слишком громоздко для такой простой задачи. Хочется красивое и элегантное решение, без вложенных циклов и лишних преобразований, просто на основе имеющихся данных.

Какой вариант вы бы использовали, возможно, есть специальные формулы \ алгоритмы для этого?.. Не обязательно готовый пример, можно статью с описанием возможного способа решения данной задачи.

Буду благодарен за советы, спасибо.
  • Вопрос задан
  • 257 просмотров
Подписаться Оценить 3 комментария
Пригласить эксперта
Ответы на вопрос 1
Neuroware
@Neuroware
Программист в свободное от работы время
Прочитал дважды и все равно не понял что вы пытаетесь сделать, хоть картинку нарисуйте чтоли или переформулируйте попроще
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы