Упражнение 4 (Производящие функции и ряды)

Дано натуральное число N. Определить, является ли оно совершенным. Совершенное число N равно сумме всех своих делителей, не превосходящих само N.

PROGRAM PRG_4;

VAR I, N, SUM : INTEGER;

BEGIN

{ДАНО НАТУРАЛЬНОЕ ЧИСЛО N. ОПРЕДЕЛИТЬ, ЯВЛЯЕТСЯ ЛИ ОНО СОВЕРШЕННЫМ. СОВЕРШЕННОЕ ЧИСЛО N РАВНО СУММЕ ВСЕХ СВОИХ ДЕЛИТЕЛЕЙ, НЕ ПРЕВОСХОДЯЩИХ САМО N }

REPEAT

WRITE(‘ВВЕДИТЕ НАТУРАЛЬНОЕ ЧИСЛО N = ‘);

READLN (N);

UNTIL N>0;

SUM := 0;

FOR I := 1 TO N DIV 2 DO

IF N MOD I = 0 THEN

SUM := SUM+I;

IF SUM «N THEN

WRITELN(‘ЧИСЛО’, N, ‘СОВЕРШЕННОЕ’)

ELSE

WRITELN(‘ЧИСЛО’, N, ‘HE СОВЕРШЕННОЕ’)

END.

Для решения задачи:

— формируем тело программы и описываем переменные;

— вводим натуральное число N;

— находим все делители числа N, не обязательно простые, и суммируем их;

— в зависимости от значения SUM выводим результат.

Переменные:

N — исследуемое число;

I — переменная цикла;

SUM — сумма делителей.

Добавить комментарий