var n,z,x,i,s,pr: integer;
begin
pr := 1;
readln(n);
for z:= 1 to n do
write('Введите натуральное число x=');
readln(x);
if (x>100) then
s:=0;
for i:=1 to x div 2 do
if x mod i = 0 then s:=s+i;
if s=x
then pr:= pr * x;
end;
write(pr);
end.
Поделитесь своими знаниями, ответьте на вопрос:
Найти произведение совершенных чисел больших 100 (Паскаль): дана последовательность из N чисел, количество чисел вводится с клавиатуры. Числа выбираются из промежутка [ 10; 50 ] .
var n,z,x,i,s,pr: integer;
begin
pr := 1;
readln(n);
for z:= 1 to n do
begin
write('Введите натуральное число x=');
readln(x);
if (x>100) then
begin
s:=0;
for i:=1 to x div 2 do
if x mod i = 0 then s:=s+i;
if s=x
then pr:= pr * x;
end;
end;
write(pr);
end.