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

надо. дана квадратная целочисленная матрица n-ного порядка. найти сумму элементов тех строк матрицы, у которых на главной диагонали расположены отрицательные элементы. написать программу с использованием подпрограмм процедура и функция.

Показать ответ
Ответ:
yanaolok
yanaolok
06.10.2020 08:05
// PascalABC.NET 3.2, сборка 1437 от 03.05.2017
// Внимание! Если программа не работает, обновите версию!

function GetDiagNeganives(a:array[,] of integer):sequence of integer;
begin
  for var i:=0 to a.RowCount-1 do
    if a[i,i]<0 then yield(i)
end;

function GetSumm(a:array[,] of integer; t:sequence of integer):integer;
begin
  Result:=0;
  foreach var e in t do
    Result+=a.Row(e).Sum
end;

procedure MatrixWrite(a:array[,] of integer);
begin
  var n:=a.RowCount;
  Writeln('*** Исходная матрица [',n,',',n,'] ***');
  a.Println(4); Writeln(4*a.ColCount*'-')
end;

begin
  var n:=ReadInteger('Количество строк/столбцов в матрице:');
  var a:=MatrRandom(n,n,-99,99);
  MatrixWrite(a);
  var s:=GetDiagNeganives(a);
  Writeln('S=',GetSumm(a,s))
end.

Пример
Количество строк/столбцов в матрице: 5
*** Исходная матрица [5,5] ***
 -31  -1 -29 -69 -19
 -83  84  52  42  52
  13 -24 -70  98 -33
  60 -94 -84  19 -14
 -55  81 -36  57  98

S=-165
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота