Курсовая работа: Работа с двумерными числовыми массивами
3 var
4 i, k: integer;//переменные для алгоритма сортировки
5 tmpRow: TVector;//временная переменная для алгоритма сортировки
6 begin
7 //алгоритм сортировки методом прямой вставки
8 for i:= 1 to high(arr) do
9 begin//для строк с первой по последнюю
10 k:= i;//начиная с текущей строки
11 while (k > 0) and (getRowSum(arr, k) > getRowSum(arr, k-1)) do
12 begin//пока не дошли до нулевой строки, и сумма строки над текущей строкой больше текущей суммы
13 swap(arr[k-1], arr[k]);//поменяем текущую строку и строку над ней местами
14 dec(k);//сдвинемся вверх
15 end;
16 end;
17 end;
2.3.2 Модуль fileIO
Этот модуль содержит процедуры для файлового ввода/вывода матриц. Используются текстовые файлы, которые предварительно необходимо открыть и подготовить к чтению/записи.
Формат файла, содержащего матрицу таков: матрица записана построчно, начиная с первой строки, элементы в каждой строке записаны слева направо и разделены произвольным количеством пробелов. Именно такой файл создаёт процедура Write 2 DArray :
1 {
2 записывает матрицу arr в текстовый файл outFile. Файл должен быть
3 предварительно открыт
4 }
5 procedure Write2DArray(const arr: TMatrix; const outFile: TextFile);
6 var
7 rowN, colN: integer;
8 begin
9 for rowN:= low(arr) to high(arr) do
10 begin
11 for colN:= low(arr[rowN]) to high(arr[rowN]) do
12 begin