С++. Двумерные массивы. Как перемешать столбцы

В этой статье показан пример перемены местами колонок в динамически-создаваемом массиве. В качестве массива используется указатель на указатель.

Вам нужно в центр своего внимания взять функцию обмена двух колонок местами. Именно на этой функции построен смешиватель колонок. Функция перемешивания просто использует функцию обмена двух колонок местами.
В функции обмена местами колонок подаётся двойной указатель, который для нас как массив, количество строк и колонок воображаемого нами массива и два числа, обозначающие номера колонок, которые нужно поменять местами. Внутри функции кода очень мало, там непосредственно происходит описание обмена двух значений: какое-то значение одной колонки меняется с соответствующим ему значению другой колонки.
В функции main() нагромождено с виду много, но это только определённая последовательность действий: выделить память указателю -&gt заполнить область памяти значениями -> вывести на экран получившееся -> обменять местами две случайные колонки -> вывести получившееся -> перемешать все колонки -> вывести получившееся -> зачистить память.
Если инфотекст, выводимый в ходе работы программы вам как-то мешает, то вы легко его уберёте самостоятельно.
Функция перемешивания колонок написана таким образом, что происходит обход половины массива и на каждом витке цикла происходит вызов функции обмена двух колонок, при этом мы указали и в качестве первой, и в качестве второй колонки — случайную колонку. Поэтому перемешивание работает здорово.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Поиск

 
     

Случайная книга в электронном формате

https://www.litres.ru/aleksey-kostarev/php-5-6991697/?lfrom=15589587

Последние комментарии

Яндекс.Метрика