В массиве А[1..N,1..N] определить номера строки и столбца какой-нибудь седловой точки. Некоторый элемент массива называется седловой точкой, если он является одновременно наименьшим в своей строке и наибольшим в своем столбце
Answers & Comments
A1dar
Const N = 5; var i, j: integer; a: array[1..N, 1..N] of integer; min, max: array[1..N] of integer; begin writeln('Исходный массив: '); for i := 1 to N do begin for j := 1 to N do begin a[i, j] := Random(10); write(a[i, j] : 3); if (j = 1) or (max[i] > a[i, j]) then max[i] := a[i, j]; if (i = 1) or (min[j] < a[i, j]) then min[j] := a[i, j]; end; writeln; end; writeln('Седловые точки: '); for i := 1 to N do for j := 1 to N do if max[i] = min[j] then writeln('[', i, '; ', j, ']'); end.
Answers & Comments
N = 5;
var
i, j: integer;
a: array[1..N, 1..N] of integer;
min, max: array[1..N] of integer;
begin
writeln('Исходный массив: ');
for i := 1 to N do begin
for j := 1 to N do begin
a[i, j] := Random(10);
write(a[i, j] : 3);
if (j = 1) or (max[i] > a[i, j]) then max[i] := a[i, j];
if (i = 1) or (min[j] < a[i, j]) then min[j] := a[i, j];
end;
writeln;
end;
writeln('Седловые точки: ');
for i := 1 to N do
for j := 1 to N do
if max[i] = min[j] then writeln('[', i, '; ', j, ']');
end.