Натуральное число называется совершенным, если оно равно сумме всех своих делителей, включая единицу и исключая само себя. Вводится натуральное число. Проверьте его на совершенство и выдайте ответ «Да» или «Нет». Подсчитайте количество операций в вашем ал- горитме и выпишите его в виде функции от параметра n, где n – вводи- мое число. Плюс два балла за правильный эффективный алгоритм про- верки числа
Var n,sum,del:integer;
n1:real;
begin
sum:=0;
repeat
writeln (Введите число);
readln(n1);
until (n1>0)and(n1=round(n1));
n:=round(n1);
for del:=1 to n-1 do//ищем делители включая единицу и исключая само число
begin
if (n mod del=0) then //если делится
sum:=sum+del; //учитываем в сумме
end;
if sum=n then writeln(Да)
else writeln(Нет)
end.
Вроде так, если я не сильно упорота
Оцени ответ
