Учебник. К.Ю Поляков, Е.А. Ерёмин. Информатика. 10 класс. Углублённый уровень. §67 Матрицы
Задача D. Минимум и максимум в матрице
PASCAL
program p66D;
var mtr:array of array of longint;
n,m:byte; //количество строк и столбцов
i,j:longint;
min,max,tmp:longint;
mini,minj,maxi,maxj:byte;
begin
readln(n,m);
SetLength(mtr,n);
for i:=0 to n-1 do SetLength(mtr[i],m);
for i:=0 to n-1 do
for j:=0 to m-1 do read(mtr[i,j]);
min:=mtr[0,0]; mini:=0; minj:=0;
max:=mtr[0,0]; maxi:=0; maxj:=0;
for i:=0 to n-1 do
for j:=0 to m-1 do
begin
tmp:=mtr[i,j];
if min > tmp then begin min:=tmp; mini:=i; minj:=j; end;
if max < tmp then begin max:=tmp; maxi:=i; maxj:=j; end;
end;
writeln(mini+1,' ',minj+1,' ',min);
writeln(maxi+1,' ',maxj+1,' ',max);
end.
C++
#include <iostream>
using namespace std;
int main()
{
int **mtr;
int n,m; //количество строк и столбцов
int i,j;
int min,max,tmp;
int mini,minj,maxi,maxj;
cin >> n >> m;
mtr = new int*[n];
for (i=0; i<n; i++)
mtr[i] = new int[m];
for (i=0; i<n; i++)
for (j=0; j<m; j++) cin >>mtr[i][j];
min=mtr[0][0]; mini=0; minj=0;
max=mtr[0][0]; maxi=0; maxj=0;
for (i=0; i<n; i++)
for (j=0; j<m; j++)
{
tmp=mtr[i][j];
if (min > tmp) {min=tmp; mini=i; minj=j;}
if (max < tmp) {max=tmp; maxi=i; maxj=j;}
}
cout << mini+1 << " " << minj+1 << " " << min << endl;
cout << maxi+1 << " " << maxj+1 << " " << max << endl;
for (i=0; i<n; i++) delete []mtr[i];
delete []*mtr;
return 0;
}