Предмет: Информатика,
автор: ura1811
Написать программу обработки двумерного массива.
Дана целочисленная квадратная матрица. Определить:
a) Сумму элементов в тех столбцах, которые не одержат отрицательных элементов (оформить в виде функции).
b) Минимум среди сумм модулей элементов диагоналей, параллельных побочной диагонали матрицы (функция).
Ответы
Автор ответа:
1
===== PascalABC.NET =====
function S(a: array[,] of integer) :=
a.Cols.Where(p -> p.All(q -> q >= 0)).SelectMany(p -> p).Sum;
function M(a: array[,] of integer): integer;
begin
var n := a.RowCount;
Result := integer.MaxValue;
var s: integer;
for var i := 0 to n - 2 do
begin
s := 0;
for var j := 0 to i do
s += Abs(a[i - j, j]);
if s < Result then
Result := s
end;
for var j := 1 to n - 1 do
begin
s := 0;
for var i := n - 1 downto j do
s += Abs(a[i, n - i + j - 1]);
if s < Result then
Result := s
end
end;
begin
var n := ReadInteger('n =');
var a := MatrRandom(n, n, -10, 30);
a.Println;
S(a).Println;
M(a).Println;
end.
Приложения:

Похожие вопросы
Предмет: Українська мова,
автор: blackadeline8
Предмет: Математика,
автор: sourtayt
Предмет: Обществознание,
автор: daska3018
Предмет: Геометрия,
автор: Аноним