СК
Сергей Конев
Найдите все совершенные числа от 1 до 1000 и выведите их на экран. Язык Паскаль
Задача:
Число совершенно, если оно равно сумме всех своих делителей, кроме самого себя. Пример: 6=1+2+3. Найдите все совершенные числа от 1 до 1000 и выведите их на экран. Подсказка: вам необходимо найти все делители от 1 до исследуемого числа. Делителем числа называется число, которое делит данное без остатка (a mod b=0).
Решение: (если решать без использования массива)
Program Z1;
Var a, c, d, e : integer;
begin
d:=1;
while d<1000 do begin a:=1; e:=0;
while a<=d do begin
c:= d mod a;
if (c=0) and (a<>1) then begin e:=e+a;
a:=a+1;
end
else a:=a+1;
end;
if e=d then begin writeln(d);
d:=d+1; end
else d:=d+1;
end; end.