Найти минимальное значение основной диагонали и наибольшее значение вспомогательной

Отыскать минимальное значение основной диагонали и наибольшее значение вспомогательной диагонали в квадратной матрице размером 5х5. Найденные значения поменять местами. Если эти значения принадлежат одному элементу, то это значение присвоить всем элементам основной и вспомогательной диагоналей.

Задать свой вопрос
2 ответа

PascalABC.NET 3.4.2, сборка 1884 от 24.11.2018

Внимание! Если программа не работает, обновите версию!

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] lt; a[i1, i1] then i1 := i;

   if a[i, n - i - 1] gt; 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 lt; 5; сч1++) матрица.push([]); for (let сч2 = 0; сч2 lt; 5; сч2++) матрица[сч1].push(Math.random() * 100 0);

var мин = матрица[0][0], н_мин = 0, макс = мин, н_макс = 0;

for (let сч = 1; сч lt; 5; сч++) if ( let зн_г = матрица[сч][сч], зн_в = матрица[сч][4 - сч]; if (зн_г lt; мин) мин = зн_г; н_мин = сч; else if (зн_в gt; макс) макс = зн_в; н_макс = сч;  )

if (н_мин == 2 amp;amp; н_макс == 2) for (let сч = 0; сч lt; 5; сч++) матрица[сч][сч] = макс; матрица[сч][4 - сч] = макс;

else матрица[н_мин][н_мин] ^= матрица[н_макс][н_макс];  матрица[н_макс][н_макс] ^= матрица[н_мин][н_мин];  матрица[н_мин][н_мин] ^= матрица[н_макс][н_макс];

, оставишь ответ?
Имя:*
E-Mail:


Последние вопросы

Добро пожаловать!

Для того чтобы стать полноценным пользователем нашего портала, вам необходимо пройти регистрацию.
Зарегистрироваться
Создайте собственную учетную запить!

Пройти регистрацию
Авторизоваться
Уже зарегистрированны? А ну-ка живо авторизуйтесь!

Войти на сайт