Число считается совершенным, если оно равно сумме своих делителей, исключая себя самого. Для проверки, является ли число N совершенным, полагаем будущую сумму делителей равной 1 (на единицу число всегда делится) и последовательно делим N на числа, начиная от 2 и заканчивая N/2.
Если число делится без остатка на очередной делитель, добавляем его к сумме. После завершения цикла делений сравниваем сумму с N и в случае равенства объявляем число N совершенным. В начале алгоритма проверяем, чтобы N было больше 1, в противном случае сразу объявляем число не совершенным.
var
i,n,s:longint;
begin
Write('Введите натуральное число: '); Read(n);
if n=1 then Writeln('Число 1 не является совершенным')
else begin
s:=1;
for i:=2 to (n div 2) do
if (n mod i)=0 then s:=s+i;
if s=n then Writeln('Число является совершенным')
else Writeln('Число не является совершенным')
end
end.
<em><u>Тестовое решение:</u></em>
Введите натуральное число: 33550336
Число является совершенным
Введите натуральное число: 543252
Число не является совершенным
В расширенной записи двухзначное число в 14-ричной системе счисления записывается в виде N = 14*a+b, a,b=0,1,2,..13
Если число N оканчивается на 8, то N = 14*a+8
Эта формула порождает ряд чисел: 8, 22, 36, 50, 64, 78 ... но 78 > 70, поэтому ответом будет ряд чисел 8, 22, 36, 50, 64.
<span>Может ли многоуровневый список включать как нумерованные, так и маркированные списки?
1. Да правильный ответ
2. нет
Пример.
1. Зима
а) декабрь
б) январь
в) февраль
2. Весна
а) март
б) апрель
в) май
</span>
B:=3 //374/100 Целых 3 раза
a:=7 //(374+3)/10 Остаток7
a:=21 //7*3=21
Ввывод:21