Составить алгоритм получения всех совершенных чисел меньше N
Ответы на вопрос
Ответил petyaGavrikov
0
Совершенным называется число, равное сумме всех своих делителей (включая 1, но исключая само число). Наименьшее из совершенных чисел 6 равно сумме трех своих делителей 1, 2 и 3.
1.
var n,s,i,j:integer;
begin
write('n = ');
readln(n);
for i:=2 to n do
begin
s:=1;
for j:=2 to i div 2 do
if i mod j = 0 then s:=s+j;
if s=i then write(i,' ');
end;
end.
Пример:
n = 1000
6 28 496
2.
алг Числа
нач
цел n,s,i,j
вывод "n =", нс
ввод n
нц для i от 2 до n
s:=1
нц для j от 2 до div(i,2)
если mod(i,j) = 0 то
s:=s+j
все
кц
если s = i то
вывод i, нс
все
кц
кон
1.
var n,s,i,j:integer;
begin
write('n = ');
readln(n);
for i:=2 to n do
begin
s:=1;
for j:=2 to i div 2 do
if i mod j = 0 then s:=s+j;
if s=i then write(i,' ');
end;
end.
Пример:
n = 1000
6 28 496
2.
алг Числа
нач
цел n,s,i,j
вывод "n =", нс
ввод n
нц для i от 2 до n
s:=1
нц для j от 2 до div(i,2)
если mod(i,j) = 0 то
s:=s+j
все
кц
если s = i то
вывод i, нс
все
кц
кон
Ответил Danilyk1284
0
Короче можешь ещё сделать,типо как в тетрадки алгоритм "начало"...."конец".
Ответил petyaGavrikov
0
Язык программирования нужно указывать в задании (если Вам нужен какой-то определенный язык).
Новые вопросы