// PascalABC.NET 3.2, сборка 1417 от 28.03.2017// Внимание! Если программа не работает, обновите версию!type Mas=array[,] of integer;procedure GetMas(s:string; var a:Mas);begin Writeln('*** Массив ',s,' ***'); var n:=ReadInteger('Количество строк в массиве:'); var m:=ReadInteger('Количество столбцов в массиве:'); Writeln('Вводите элементы массива'); a:=ReadMatrInteger(n,m)end;function SumDiag(a:Mas):integer;begin Result:=0; for var i:=0 to Min(a.RowCount,a.ColCount)-1 do Result+=a[i,i]end;begin var a,b,c:Mas; GetMas('A',a); GetMas('B',b); GetMas('C',c); Writeln('Общая сумма элементов главных диагоналей равна ', SumDiag(a)+SumDiag(b)+SumDiag(c))end.
Пример*** Массив A ***Количество строк в массиве: 3Количество столбцов в массиве: 4Вводите элементы массива-33 -50 34 -41-31 10 37 3132 -49 -32 -27*** Массив B ***Количество строк в массиве: 2Количество столбцов в массиве: 2Вводите элементы массива-22 350 11*** Массив C ***Количество строк в массиве: 3Количество столбцов в массиве: 2Вводите элементы массива23 3817 -816 -1Общая сумма элементов главных диагоналей равна -51