Предмет: Информатика, автор: Аноним

помогите пожалуйста

В квадратной матрице А(7,7) поменять местами минимальные элементы
первой и третьей строк, максимальные элементы главной и побочной
диагоналей.


Аноним: Обычно еще указывают язык программирования. Либо, увидев решение, потом пишут "Ой, мне на другом языке надо!"
Giammy: Но если же язык не указан, то нас же это не волнует, одному не подошло, а другому как раз)
Аноним: Если не указала значит его нет
Giammy: Без проблем.
Giammy: Скажите еще одно
Giammy: Первая и третья по индексу или по счету, точнее от 0 до 6 индексация или от 1 до 7
Аноним: Без понятия
Giammy: Будет от 0

Ответы

Автор ответа: Giammy
0

Изящно и непонятно.

// PascalABC.NET 3.4, сборка 1767 от 27.08.2018


begin

  var matr := MatrRandom(7, 7, 0, 100); matr.Println;  // // объявление матрицы со случайными значениями в диапазоне(0, 100) и её печать

  Swap(matr[0, matr.Row(0).IndexMin], matr[2, matr.Row(2).IndexMin]);   // меняем местами мин. элементы первой и третьей строк.

  var m := matr.ElementsWithIndexes.Where(t -> t[1] = t[2]).MaxBy(t -> t[0]);  // получение максимального элемента с его позицией в матрице главной диагонали.

  var s := matr.ElementsWithIndexes.Where(t -> (t[1], t[2]) in Range(0, 6).Select((t, i)-> (t, abs(i - 6)))).MaxBy(t -> t[0]);  // и побочной

  Println;  // отступ

  Swap(matr[m[1], m[2]], matr[s[1], s[2]]);  // меняем местами макс. элементы диагоналей

  matr.Println;  // печать результата

end.


Пример вывода в приложении:

Приложения:
Похожие вопросы
Предмет: Английский язык, автор: Аноним