Const n=5; var t:array[1..n,1..n] of integer; i,j,p,k:integer; begin Randomize; writeln('Исходный массив:'); for i:=1 to n do begin for j:=1 to n do begin t[i,j]:=random(50); write(t[i,j]:4); end; writeln; end; p:=1; k:=0; for i:=1 to n do begin if t[i,i] mod 5 = 0 then p:=p*t[i,i]; if t[i,n-i+1] mod 2 = 0 then k:=k+1; end; writeln('p = ',p,' k = ',k); end.
// PascalABC.NET 3.3, сборка 1633 от 10.02.2018 // Внимание! Если программа не работает, обновите версию!
begin var (m,n):=ReadInteger2('Количество строк и столбцов в матрице:'); Writeln('*** Матрица A ***'); var a:=MatrRandom(m,n,10,99); a.Println(3); var b:=new integer[m,n]; var c:=new integer[m,n]; for var i:=0 to m-1 do for var j:=0 to n-1 do (b[i,j],c[i,j]):=(a[i,j] div 10,a[i,j] mod 10); Writeln('*** Матрица B ***'); b.Println(3); Writeln('*** Матрица C ***'); c.Println(3); Writeln(3*n*'-'); Writeln('Количество нулевых элементов в С: ', c.ElementsByRow.Where(t->t=0).Count); var (sb,sc):=(b.ElementsByRow.Sum,c.ElementsByRow.Sum); Writeln('Сумма всех элементов матрицы B: ',sb); Writeln('Сумма всех элементов матрицы C: ',sc); if sb>sc then Writeln('Сумма элементов матрицы B больше') else if sc>sb then Writeln('Сумма элементов матрицы C больше') else Writeln('Суммы элементов матриц B и С равны') end.
Pascalabc.net 3.4.0, сборка 1675 от 12.06.2018 внимание! если программа не работает, обновите версию! procedure println(self: array of real); extensionmethod; begin self.batch(5).foreach(s-> begin foreach var p in s do write(p: 15: 10); writeln end); writeln(min(15*(self.count div 2),38)*'- ') end; begin var m: =arrgen(readinteger('n='),i-> cos(i),1); m.println; var (a,b): =readreal2('введите границы a b: '); writeln('число элементов на интервале [',a,',',b,'] равно ', m.where(t-> t.between(a,); write('сумма элементов, расположенных после максимального, равна '); var imax: =m.indexmax; (m? [imax+1: ].sum).println; writeln('элементы, по убыванию модулей'); m: =m.orderbydescending(t-> abs(; m.println; end.
var
t:array[1..n,1..n] of integer;
i,j,p,k:integer;
begin
Randomize;
writeln('Исходный массив:');
for i:=1 to n do
begin
for j:=1 to n do
begin
t[i,j]:=random(50);
write(t[i,j]:4);
end;
writeln;
end;
p:=1; k:=0;
for i:=1 to n do
begin
if t[i,i] mod 5 = 0 then p:=p*t[i,i];
if t[i,n-i+1] mod 2 = 0 then k:=k+1;
end;
writeln('p = ',p,' k = ',k);
end.
Пример:
Исходный массив:
30 16 33 25 4
23 2 11 14 45
11 29 22 48 6
36 21 35 37 4
27 14 44 13 29
p = 30 k = 3