Курсовая работа: Работа с двумерными числовыми массивами
1 type
2 TVector = array of integer;
3 TMatrix = array of TVector;
Поиск максимальных элементов в матрице.
Процедура GetMaxVals , которая, перебирая все строки матрицы, находит в каждой максимальный элемент, записывает его значение в массив maxVal, а его номер столбца в массив maxValCol. Предварительно процедура выделяет необходимую намять для этих массивов. Листинг:
1 {
2 формирует массив максимальных элементов maxVal и массив номеров столбцов,
3 содержащих максимальные элементы maxValCol на основе матрицы arr
4 }
5 procedure GetMaxVals(var maxVal, maxValCol: TVector; const arr: TMatrix);
6 var
7 RowN, ColN, maxInRow: integer;
8 begin
9 //выделим необходимый для каждого массива объём памяти
10 SetLength(maxVal, high(arr)+1);
11 SetLength(maxValCol, high(arr)+1);
12 for RowN:= low(arr) to high(arr) do
13 begin//для каждой строки
14 maxVal[RowN]:= low(integer);//по умолчанию максимальное значение -2147483648
15 maxValCol[RowN]:= -1;//по умолчанию номер столбца с макс элементом -1
16 for ColN:= low(arr[RowN]) to high(arr[RowN]) do
17 begin//для каждого столбца
18 if arr[RowN, ColN] > maxVal[RowN] then
19 begin//если элемент больше макс значения, то
20 maxVal[RowN]:= arr[RowN, ColN];//максимальное значение приравняем элементу
21 maxValCol[RowN]:= ColN;//номер столбца приравняем текущему столбцу
22 end;
23 end;
24 end;