// PascalABC.NET 3.3, сборка 1600 от 23.12.2017 // Внимание! Если программа не работает, обновите версию!
begin var a:=ArrRandom(ReadInteger('n='),-50,50); a.Println; var (k1,k2):=ReadInteger2('Границы номеров элементов k1 и k2:'); if (k1>0) and (k2<=a.Length) and (k2>k1) then Writeln('П=',a[k1-1:k2].Aggregate(BigInteger(1),(p,q)->p*q)) else Writeln('Неверно заданы k1,k2') end.
Пример n= 17 -49 33 -50 34 -21 -3 -16 -39 8 -27 -28 11 -12 -33 47 9 -20 Границы номеров элементов k1 и k2: 3 15 П=-82750680146534400
Const m=200; var a: array[1..m] of integer; i,k1,k2,p,n: integer; begin write('количество элементов массива: '); readln(n); randomize; write('массив: '); for i:=1 to n do begin a[i]:=random(-40,40); write(a[i],' '); end; writeln; write('k1 k2 через пробел: '); readln(k1,k2); p:=1; if (k1 in [1..n]) and (k2 in [1..n]) and (k2>k1) then begin for i:=k1 to k2 do p:=p*a[i]; writeln('произведение: ',p); end else writeln('недопустимые значения k1 и k2 ',k1,' ',k2); end.
количество элементов массива: 10 массив: 18 -40 5 -5 -22 -1 -3 22 -11 37 k1 k2 через пробел: 3 5 произведение: 550
// Внимание! Если программа не работает, обновите версию!
begin
var a:=ArrRandom(ReadInteger('n='),-50,50); a.Println;
var (k1,k2):=ReadInteger2('Границы номеров элементов k1 и k2:');
if (k1>0) and (k2<=a.Length) and (k2>k1) then
Writeln('П=',a[k1-1:k2].Aggregate(BigInteger(1),(p,q)->p*q))
else Writeln('Неверно заданы k1,k2')
end.
Пример
n= 17
-49 33 -50 34 -21 -3 -16 -39 8 -27 -28 11 -12 -33 47 9 -20
Границы номеров элементов k1 и k2: 3 15
П=-82750680146534400
var a: array[1..m] of integer;
i,k1,k2,p,n: integer;
begin
write('количество элементов массива: ');
readln(n);
randomize;
write('массив: ');
for i:=1 to n do
begin
a[i]:=random(-40,40);
write(a[i],' ');
end;
writeln;
write('k1 k2 через пробел: '); readln(k1,k2);
p:=1;
if (k1 in [1..n]) and (k2 in [1..n]) and (k2>k1) then
begin
for i:=k1 to k2 do p:=p*a[i];
writeln('произведение: ',p);
end
else writeln('недопустимые значения k1 и k2 ',k1,' ',k2);
end.
количество элементов массива: 10
массив: 18 -40 5 -5 -22 -1 -3 22 -11 37
k1 k2 через пробел: 3 5
произведение: 550