// PascalABC.NET 3.0, сборка 1128 procedure Convert(V:array of integer); begin for var i:=0 to V.Length-1 do if V[i]>9 then V[i]:=9 else if V[i]<5 then V[i]:=5 end;
procedure Develop(c:char; k:integer); begin WritelnFormat('*** Массив {0} ***',c); var a:=ArrRandom(k,-5,15); Write('исходный : '); a.PrintLn(','); Convert(a); Write('результат: '); a.PrintLn(','); end;
begin var m:=ReadInteger('Количество элементов в массиве A:'); var n:=ReadInteger('Количество элементов в массиве B:'); Develop('A',m); Develop('B',n) end.
Тестовое решение: Количество элементов в массиве A: 15 Количество элементов в массиве B: 10 *** Массив A *** исходный : 6,5,-5,9,1,0,-3,9,13,12,-4,8,11,14,-5 результат: 6,5,5,9,5,5,5,9,9,9,5,8,9,9,5 *** Массив B *** исходный : 5,12,12,4,7,9,7,-3,-1,-2 результат: 5,9,9,5,7,9,7,5,5,5
PascalABC.NET 3.3.5, сборка 1659 от 09.04.2018 Внимание! Если программа не работает, обновите версию!
begin var n:=ReadInteger('Количество строк/столбцов в матрице:'); Writeln('*** Исходная матрица ***'); var a:=MatrRandom(n,n,1,50); a.Println(3); Writeln(3*a.ColCount*'-'); // начало расчетов var s:=0; for var i:=0 to n-1 do s+=a[i,n-i-1]; Writeln('1: S=',s); Write('2: Суммы построчно: '); a.Rows.Select(row->row.Sum).PrintLn; Write('3: Произведение элементов: '); a.ElementsByRow.Aggregate(BigInteger(1),(p,q)->p*q).PrintLn; var p:BigInteger:=1; for var i:=0 to n-1 do p*=a[i,i]; Writeln('4: П=',p); end.
procedure Convert(V:array of integer);
begin
for var i:=0 to V.Length-1 do
if V[i]>9 then V[i]:=9
else
if V[i]<5 then V[i]:=5
end;
procedure Develop(c:char; k:integer);
begin
WritelnFormat('*** Массив {0} ***',c);
var a:=ArrRandom(k,-5,15);
Write('исходный : '); a.PrintLn(',');
Convert(a);
Write('результат: '); a.PrintLn(',');
end;
begin
var m:=ReadInteger('Количество элементов в массиве A:');
var n:=ReadInteger('Количество элементов в массиве B:');
Develop('A',m);
Develop('B',n)
end.
Тестовое решение:
Количество элементов в массиве A: 15
Количество элементов в массиве B: 10
*** Массив A ***
исходный : 6,5,-5,9,1,0,-3,9,13,12,-4,8,11,14,-5
результат: 6,5,5,9,5,5,5,9,9,9,5,8,9,9,5
*** Массив B ***
исходный : 5,12,12,4,7,9,7,-3,-1,-2
результат: 5,9,9,5,7,9,7,5,5,5
Внимание! Если программа не работает, обновите версию!
begin
var n:=ReadInteger('Количество строк/столбцов в матрице:');
Writeln('*** Исходная матрица ***');
var a:=MatrRandom(n,n,1,50);
a.Println(3); Writeln(3*a.ColCount*'-');
// начало расчетов
var s:=0;
for var i:=0 to n-1 do s+=a[i,n-i-1];
Writeln('1: S=',s);
Write('2: Суммы построчно: '); a.Rows.Select(row->row.Sum).PrintLn;
Write('3: Произведение элементов: ');
a.ElementsByRow.Aggregate(BigInteger(1),(p,q)->p*q).PrintLn;
var p:BigInteger:=1;
for var i:=0 to n-1 do p*=a[i,i];
Writeln('4: П=',p);
end.