В скобках указано решение. после знака _ это значит, что число должно быть указано ниже числа маленькими буквами ( ). " значит, что чисто будет вверху маленькой буквой ( )
spec-nt
21.06.2021
1. Вариант современного решения на современной версии языка Паскаль
// PascalABC.NET 3.3, сборка 1555 от 21.10.2017 // Внимание! Если программа не работает, обновите версию!
begin var a:array[,] of integer:=( ( 2, 1,-1, 4), (-3, 1,-4, 1), ( 2, 1, 2, 3), ( 2, 2, 5, 4), (-3,-1,-3, 1)); Writeln('*** Исходная матрица ***'); a.Println(3); Writeln(3*a.ColCount*'-'); var s:=a.Col(2).Where(x->Abs(x)<=3); Writeln('Элементов ',s.Count,', их сумма равна ',s.Sum) end.
procedure SumCol(m,k:integer; var p,s:integer); var i:integer; begin s:=0; p:=0; for i:=1 to m do if Abs(a[i,k])<=3 then begin s:=s+a[i,k]; p:=p+1 end end;
var i,j,kol,sum:integer;
begin Writeln('*** Исходная матрица ***'); for i:=1 to m do begin for j:=1 to n do Write(a[i,j]:3); Writeln end; for i:=1 to n do Write('---'); Writeln; SumCol(m,3,kol,sum); Writeln('Элементов ',kol,', их сумма равна ',sum) end.
1111 > 1
1111 > 1000
1110< 1111
1<1000