Натуральное число называется совершенным, если оно равно сумме всех своих делителей, включая единицу и исключая само себя. Вводится натуральное число. Проверьте его на совершенство и выдайте ответ «Да» или «Нет». Подсчитайте ко...
Натуральное число называется совершенным, если оно равно сумме всех своих делителей, включая единицу и исключая само себя. Вводится натуральное число. Проверьте его на совершенство и выдайте ответ «Да» или «Нет». Подсчитайте количество операций в вашем ал- горитме и выпишите его в виде функции от параметра 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.
Вроде так, если я не сильно упорота
Не нашли ответ?
Похожие вопросы