Вывести первые N (N<5) совершенных чисел на экран - Pascal ABC

Формулировка задачи:

Натуральное число называется совершенным, если оно равно сумме всех своих делителей, включая единицу и исключая себя. Например, 6=1+2+3 – число совершенное. Вывести первые N (N<5) совершенных чисел на экран Добавлено через 1 час 22 минуты Можете просто написать решение

Код к задаче: «Вывести первые N (N<5) совершенных чисел на экран - Pascal ABC»

textual
var s:string;
    st,sover,i:longint;
    k,n:byte;
function sov(x:longint):boolean;
var f:boolean;
    i,d:longint;
begin
 f:=false;d:=0;
 for i:=1 to x-1 do if x mod i = 0 then inc(d,i);
 if x=d then f:=true;
 sov:=f
end;
begin
 repeat
  writeln('n=?,0<n<5: ');readln(n);
 until (n>0)and(n<5);
 s:='110';k:=0;
 repeat
  st:=1;sover:=0;
  for i:= length(s) downto 1 do
   begin
    sover:=sover+(ord(s[i])-48)*st;
    st:=st*2
   end;
  if sov(sover) then begin write(sover,' ');inc(k) end;
  s:='1'+s+'0';
 until k=n;
end.

6   голосов, оценка 3.500 из 5


СОХРАНИТЬ ССЫЛКУ
Похожие ответы