1. Типовое "школьное" решениеconst nn=20; { указать максимально возможный размер } var a:array[1..nn,1..nn] of integer; n,i,j,mx,k:integer;begin Randomize; Write('n='); Read(n); mx:=-20; { меньше минимально возможного } for i:=1 to n do begin for j:=1 to n do begin a[i,j]:=Random(21)-10; Write(a[i,j]:4); if a[i,j]>mx then begin mx:=a[i,j]; k:=1 end else if a[i,j]=mx then Inc(k) end; Writeln; end; Writeln('Максимальное значение ',mx,' встречается ',k,' раз(а)')end.Пример работы программыn=10 3 -1 -6 10 -9 -8 -7 1 2 -9 0 6 -1 -2 2 7 3 -5 -2 6 6 0 -3 0 -6 1 9 9 -6 -10 -3 7 -3 -4 -10 6 -8 -9 -10 -3 -1 -1 1 0 1 8 -8 6 7 -5 -1 1 0 -4 -9 -8 -9 4 5 0 -6 -5 -4 2 5 3 -2 -8 -3 6 5 1 -6 -10 -4 -3 10 7 10 -4 -1 -7 -9 10 2 7 -3 -9 -6 8 4 -2 -4 1 -7 -7 -8 10 6 8Максимальное значение 10 встречается 5 раз(а)2. Решение на основе базовых возможностей PascalABC.Net 3.2var a:array[,] of integer;begin Randomize; var n:=ReadInteger('n='); SetLength(a,n,n); var mx:=-20; // меньше минимально возможного var k:integer; for var i:=0 to n-1 do begin for var j:=0 to n-1 do begin a[i,j]:=Random(-10,10); Write(a[i,j]:4); if a[i,j]>mx then begin mx:=a[i,j]; k:=1 end else if a[i,j]=mx then Inc(k) end; Writeln; end; Writeln('Максимальное значение ',mx,' встречается ',k,' раз(а)')end.Пример работы программыn= 10 0 2 2 -10 -5 -4 8 6 -8 -1 -4 5 9 3 -4 -8 6 -10 8 -3 5 5 -2 -8 6 -7 -9 5 -10 2 1 -7 -7 -3 0 -10 4 1 6 -1 -2 2 -8 3 0 3 9 5 -1 -8 10 8 3 1 10 5 -7 0 -6 -9 -6 -7 5 0 8 -8 2 2 -8 -4 -2 -5 -6 -1 10 -7 2 5 2 -7 -6 -3 -5 9 3 3 0 2 -2 5 7 -7 -4 5 -6 -6 7 2 6 -3Максимальное значение 10 встречается 3 раз(а)