uses crt;
var
a:array [1..1000,1..1000] of integer;
i,j,max,min,k:integer;
begin
clrscr; randomize;
write ('Введи количество столбцов/строк матрицы: ');read(k);
for i:=1 to k do
begin
for j:=1 to k do
begin
a[i,j]:=random(100)-50;
write (a[i,j]:4);
end;
writeln;
end;
max:=1; min:=1;
for i:=2 to k do
if a[i,i]>max then max:=a[i,i]
else
if a[i,i]<min then min:=a[i,i];
writeln('Наибольшее значение главной диагонали: ',max);
write('Наименьшее значение главной диагонали: ',min);
end.
Можно обойтись без массива и этим сэкономить память компьютера.
Можно также вывести такую матрицу (в виде песочных часов) любого размера. Для этого нужно только изменить значение n в строке
const n=5
Program Pentelemon;
uses crt;
const n=5;
var
i,j:integer;
begin
writeln('*** alphaues is thinking... ***');
writeln('*** OK ***');
writeln();
for i:=1 to n do
begin
for j:=1 to n do
begin
if ((j>=i) and (i+j<=n+1)) or ((j<=i) and (i+j>=n+1)) then
write ('1 ')
else
write ('0 ');
end;
writeln();
end;
end.