Разработка приложений для ПК. Разработка с нуля. Линейный q-ичный код C, где q-простое число, задаётся проверочной или порождающей матрицей. Операции в конечном поле из q элементов, где q-простое число, совпадают с операциями в кольце вычетов по модулю q. Необходимо запрограммировать следующий алгоритм на языке Puthon: 1)Приведение матрицы к ступенчатому виду преобразованиями строк. 2)Выделение невырожденного минора из полученной матрицы в ступенчатом виде - столбцы с первой единицей в каждой из ступеней. 3)Переход к коду ?(C): перестановка столбцов так чтобы невырожденный минор в матрице был слева; затем приведение минора слева к единичной матрице преобразованиями строк 4)Получение порождающей или проверочной матрицы для ?(C) из теоремы о матрицах в каноническом виде. 5)Обратная перестановка столбцов (?^(–1)) и получение порождающей или проверочной для исходного кода . Ввод Текстовый файл input.txt, содержащий матрицу формата: [[1,1,1,1,0], [0,1,1,0,0], [0,0,0,1,0]] Вывод Текстовый файл output.txt, содержащий матрицу в прежнем формате. В отдельной последней строке общее время выполнения программы в миллисекундах вида Time: 12345ms. Необходимо наличие исполняемого файла формата .exe или инструкция по сборке.