Попробуй так:
const<span> nmax=100;
var
a: array[1..nmax,1..nmax] of integer;
i,j,m,n,min,max,i_max,j_max,i_min,j_min,tmp: integer;
begin
randomize;
write('Введите размеры массива m, n: ');
readln(m,n);
writeln('Исходная матрица:');
for i:=1 to m do
begin
for j:=1 to n do
begin
a[i,j]:=random(99)+1;
write(a[i,j]:4);
end;
writeln;
end;
writeln;
min:=a[1,1]; max:=a[1,1];
i_min:=1; j_min:=1; i_max:=1; j_max:=1;
for i:=1 to m do
for j:=1 to n do
begin
if a[i,j]>max then
begin
max:=a[i,j];
i_max:=i;
j_max:=j;
end;
if a[i,j]<min then
begin
min:=a[i,j];
i_min:=i;
j_min:=j;
end;
end;
writeln('Максимальный элемент: ',max,'[',i_max,',',j_max,']');
writeln('Минимальный элемент: ',min,'[',i_min,',',j_min,']');
tmp:=a[i_min,j_min];
a[i_min,j_min]:=a[i_max,j_max];
a[i_max,j_max]:=tmp;
writeln('Полученная матрица:');
for i:=1 to m do
begin
for j:=1 to n do
write(a[i,j]:4);
writeln;
end;
readln;
end.</span>
===== PascalABC.NET =====
function S(a: array[,] of integer) :=
a.Cols.Where(p -> p.All(q -> q >= 0)).SelectMany(p -> p).Sum;
function M(a: array[,] of integer): integer;
begin
var n := a.RowCount;
Result := integer.MaxValue;
var s: integer;
for var i := 0 to n - 2 do
begin
s := 0;
for var j := 0 to i do
s += Abs(a[i - j, j]);
if s < Result then
Result := s
end;
for var j := 1 to n - 1 do
begin
s := 0;
for var i := n - 1 downto j do
s += Abs(a[i, n - i + j - 1]);
if s < Result then
Result := s
end
end;
begin
var n := ReadInteger('n =');
var a := MatrRandom(n, n, -10, 30);
a.Println;
S(a).Println;
M(a).Println;
end.
Const
n = 10;
var
i, s: integer;
a: array[1..n] of integer;
begin
Writeln('Введите элементы массива через пробел');
for i := 1 to n do Read(a[i]);
s := a[n];
for i := n downto 2 do a[i] := a[i - 1];
a[1] := s;
for i := 1 to n do Write(a[i]:4);
end.
<u>Тестовое решение:</u>
Введите элементы массива через пробел
4 -5 3 10 -4 -6 8 -10 1 0
0 4 -5 3 10 -4 -6 8 -10 1
Дополнил класс Geometry двумя методами PolygonS() для подсчета площади прямоугольника и квадрата. Метод S() для подсчета площади круга превратился в CircleS(), дабы было понятнее. В методе Par() теперь код не дублируется и используется из CircleS().
Надо составить массив n*m
где n-номер строки
ввести переменную max
if n>max then max:=n
потом пишешь writeln(n)