В
Все
Х
Химия
В
Видео-ответы
А
Алгебра
Г
Геометрия
О
ОБЖ
Д
Другие предметы
У
Українська література
Р
Русский язык
Б
Беларуская мова
У
Українська мова
Э
Экономика
Ф
Физика
М
Математика
Ф
Французский язык
Г
География
И
Информатика
М
МХК
О
Окружающий мир
П
Психология
Н
Немецкий язык
О
Обществознание
П
Право
И
История
М
Музыка
Л
Литература
Қ
Қазақ тiлi
Б
Биология
А
Английский язык
lesya16146
lesya16146
06.04.2022 09:35 •  Информатика

Вматрице a(n*n) поменять местами первый элемент с наименьшим диагональным элементом. паскаль

Ответ:
maririz405
maririz405
08.10.2020 06:25
// PascalABC.NET 3.3

begin
 var n:=ReadInteger('n =');
 var a:=MatrRandom(n,n,-10,10).Println(5);
 var i:=a.ElementsWithIndexes.Where(k->k[2]=k[1]).
      Select(k->k[0]).ToArray.IndexMin;
 Swap(a[0,0],a[i,i]);
 writeln('* * * * * * *');
 a.Println(5);
end.

Пример:
n = 4
    7    9   -7   -2
    5    9   -5    5
    1    7    2    4
   -6    0   -4    7
* * * * * * *
    2    9   -7   -2
    5    9   -5    5
    1    7    7    4
   -6    0   -4    7
0,0(0 оценок)
Ответ:
karinochka666
karinochka666
08.10.2020 06:25
PascalABC.NET 3.3.5, сборка 1640 от 17.03.2018
Внимание! Если программа не работает, обновите версию!

begin
  var n:=ReadInteger('Количество строк/столбцов в матрице:');
  Writeln('*** Исходная матрица ***');
  var a:=MatrRandom(n,n,-99,99);
  a.Println(4); Writeln(4*a.ColCount*'-');
  var k:=Range(0,n-1).Select(i->a[i,i]).ToArray.IndexMin;
  Swap(a[0,0],a[k,k]);
  Writeln('*** Результат ***');
  a.Println(4)
end.

Пример
Количество строк/столбцов в матрице: 5
*** Исходная матрица ***
 -54   0  45  24  72
 -90  46  54  46  50
 -51  85 -76 -64 -27
 -14 -33 -66   2  71
  43 -92  77  58 -22

*** Результат ***
 -76   0  45  24  72
 -90  46  54  46  50
 -51  85 -54 -64 -27
 -14 -33 -66   2  71
  43 -92  77  58 -22
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?