Найти минимальное значение главной диагонали и максимальное значение диагонали в квадратной матрице размером 5х5. найденные значения поменять местами. если эти значения принадлежат одному элементу, то это значение присвоить всем элементам главной и диагоналей.
begin
var n := 5;
Writeln('*** Исходная матрица ***');
var a := MatrRandom(n, n, -99, 99);
a.Println(4);
Writeln(4 * a.ColCount * '-');
Writeln('*** Полученная матрица ***');
var (i1, i2) := (0, 0);
for var i := 1 to n - 1 do
begin
if a[i, i] < a[i1, i1] then i1 := i;
if a[i, n - i - 1] > a[i2, n - i2 - 1] then i2 := i
end;
if i1 = i2 then
for var i := 0 to n - 1 do
(a[i, i], a[i, n - i - 1]) := (a[i1, i1], a[i1, i1])
else Swap(a[i1, i1], a[i2, n - i2 - 1]);
a.Println(4)
end.
javascript:var матрица = [];
for (let сч1 = 0; сч1 < 5; сч1++) { матрица.push([]); for (let сч2 = 0; сч2 < 5; сч2++) матрица[сч1].push(Math.random() * 100 | 0); }
var мин = матрица[0][0], н_мин = 0, макс = мин, н_макс = 0;
for (let сч = 1; сч < 5; сч++) if ( let зн_г = матрица[сч][сч], зн_в = матрица[сч][4 - сч]; if (зн_г < мин) { мин = зн_г; н_мин = сч; } else if (зн_в > макс) { макс = зн_в; н_макс = сч; } )
if (н_мин == 2 && н_макс == 2) for (let сч = 0; сч < 5; сч++) { матрица[сч][сч] = макс; матрица[сч][4 - сч] = макс; }
else { матрица[н_мин][н_мин] ^= матрица[н_макс][н_макс]; матрица[н_макс][н_макс] ^= матрица[н_мин][н_мин]; матрица[н_мин][н_мин] ^= матрица[н_макс][н_макс]; }