Найти максимальный и минимальный элемент каждой строки матрицы - Pascal
Формулировка задачи:
Дан двумерный массив произвольной величины. Найти максимальный и минимальный элемент каждой строки массива.
Заранее спасибо))
Решение задачи: «Найти максимальный и минимальный элемент каждой строки матрицы»
textual
Листинг программы
WriteLn('A =');
for i:=Low(a) to High(a) do begin
mx:=a[i,Low(a[i])]; mn:=mx;
for j:=Low(a[i]) to High(a[i]) do begin
Write(a[i,j]:W);
if mx<a[i,j] then mx:=a[i,j];
if mn>a[i,j] then mn:=a[i,j];
end; WriteLn(' | ',mx:W,mn:W);
end;
Объяснение кода листинга программы
- Создается цикл для перебора строк матрицы:
- Переменная
iравнаLow(a)(индекс нижнего предела массива) и проходит черезHigh(a)(индекс верхнего предела массива).
- Переменная
- Устанавливаются начальные значения для переменных максимального и минимального элементов в строке:
- Переменная
mxустанавливается равной элементуa[i,Low(a[i])](первый элемент в строке). - Переменная
mnустанавливается равнойmx.
- Переменная
- Создается вложенный цикл для перебора элементов в строке:
- Переменная
jравнаLow(a[i])и проходит черезHigh(a[i]).
- Переменная
- Выводится элемент матрицы с выравниванием:
- Выводится
a[i,j]с использованием формата выравниванияW.
- Выводится
- Если значение элемента больше, чем текущее максимальное значение, то оно становится новым максимальным значением:
- Если
mx < a[i,j], тоmxстановится равнымa[i,j].
- Если
- Если значение элемента меньше, чем текущее минимальное значением, то оно становится новым минимальным значением:
- Если
mn > a[i,j], тоmnстановится равнымa[i,j].
- Если
- Печатаются максимальное и минимальное значение в строке:
- Выводится строка с разделителями
|, затем печатаютсяmxиmnс использованием формата выравниванияW.
- Выводится строка с разделителями