Задача по программированию ** паскале

0 голосов
27 просмотров

Задача по программированию на паскале


image

Информатика (23 баллов) | 27 просмотров
Дано ответов: 2
0 голосов
Правильный ответ

Var a,b,k:integer; p:real;
begin
write('b = ');
readln(b);
p:=1; k:=0;
writeln('Вводите целые числа');
readln(a);
while a<>0 do
 begin
 if a>0 then p:=p*a;
 if a mod b = 0 then k:=k+1;
 readln(a);
 end;
writeln('p = ',p,' k = ',k);
end.

Пример:
b = 3
Вводите целые числа
8
-7
4
-2
9
-3
5
6
0
p = 8640 k = 3

(194k баллов)
0 голосов
// PascalABC.NET 3.2, сборка 1325 от 19.10.2016
begin
  var a:=ArrRandom(ReadInteger('Длина последовательности:'),-50,50);
  a.Println;
  var b:=ReadInteger('Введите число В:');
  Writeln('Произведение положительных ',
    a.Aggregate(biginteger(1),(p,q)->p*q));
  Writeln('Количество кратных ',b,' равно ',a.Count(e->e mod b=0))
end.

Пример
Длина последовательности: 20
-5 -10 13 -41 -43 15 19 48 -16 49 -24 3 -7 -47 -37 36 37 36 18 32
Введите число В: 3
Произведение положительных -297527529736968476295168000
Количество кратных 3 равно 7
(150k баллов)