Создать подпрограмму, которая получает в качестве аргумента целое число и проверяет, является ли оно совершенным. Используя подпрограмму вывести на экран все совершенные числа из промежутка целых чисел, определенного пользователем, и их общее количество. Pascal ABC
Ответы на вопрос
Ответил DonPedro80
0
function Sov(n:longint):boolean;
begin
case n of
6:Sov:=true;
28:Sov:=true;
496:Sov:=true;
8128:Sov:=true;
33550336:Sov:=true;
else Sov:=false
end
end;
var
a,b,i,k:longint;
begin
Write('Введите границы промежутка через пробел: ');
Readln(a,b);
for i:=1 to b do
if Sov(i) then
begin
Write(i,' ');
Inc(k)
end;
Writeln;
Writeln('Найдено совершенных чисел: ',k)
end.
begin
case n of
6:Sov:=true;
28:Sov:=true;
496:Sov:=true;
8128:Sov:=true;
33550336:Sov:=true;
else Sov:=false
end
end;
var
a,b,i,k:longint;
begin
Write('Введите границы промежутка через пробел: ');
Readln(a,b);
for i:=1 to b do
if Sov(i) then
begin
Write(i,' ');
Inc(k)
end;
Writeln;
Writeln('Найдено совершенных чисел: ',k)
end.
Ответил DonPedro80
0
Использовано свойство того, что на всем промежутка доступных целых чисел есть всего 5 совершенных и они давно известны.
Новые вопросы
Русский язык,
2 года назад
Английский язык,
2 года назад
Биология,
8 лет назад
Математика,
8 лет назад