Напишите программу получения всех совершенных чисел из диапазона от 1 до N.Прошу написать...

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

Напишите программу получения всех совершенных чисел из диапазона от 1 до N.Прошу написать через цикл While.


Информатика (161 баллов) | 246 просмотров
Дан 1 ответ
0 голосов

var n,i,j,s,k:integer;

begin

write('Введите число: ');

readln(n);

i:=1;

while i <= n do  </p>

begin

j:=1;

s:=0;

while j do

if i mod j = 0 then

begin

s:=s+j;

j:=j+1;

end

else

j:=j+1;

if s=i then

begin

k:=k+1;

if k=1 then write('Совершенные числа из диапазона от 1 до ',n,': ');

write(i,'  ')

end;

i:=i+1

end;

if k=0 then write('Совершенных чисел в диапазоне от 1 до ',n,' нет');

end.

(1.7k баллов)