Буду признательна за помощь! Нужно написать программу на Паскале ABC
1. Вводится последовательность целых чисел, 0 -конец последовательности. Определить, содержит ли последовательность хотя бы одно совершенное число. Для определения совершенного числа создать функцию.
Заранее спасибо!

5 Сен 2019 в 23:41
247 +1
0
Ответы
1
program PerfectNumber;
function IsPerfectNumbernum:integernum: integernum:integer: boolean;
var
sum, i: integer;
begin
sum := 0;
for i := 1 to num div 2 do
begin
if num mod i = 0 then
sum := sum + i;
end;
IsPerfectNumber := sum = num;
end;
var
n, num: integer;
hasPerfectNumber: boolean;
begin
hasPerfectNumber := false;
repeat
write′Введитечисло:′'Введите число: 'Введитечисло:;
readlnnumnumnum;
if num <> 0 then
begin
if IsPerfectNumbernumnumnum then
begin
hasPerfectNumber := true;
break;
end;
end;
until num = 0;
if hasPerfectNumber then
writeln′Последовательностьсодержитхотябыодносовершенноечисло.′'Последовательность содержит хотя бы одно совершенное число.'Последовательностьсодержитхотябыодносовершенноечисло. else
writeln′Последовательностьнесодержитсовершенныхчисел.′'Последовательность не содержит совершенных чисел.'Последовательностьнесодержитсовершенныхчисел.;
end.

Эта программа позволяет ввести последовательность целых чисел, пока не будет введен ноль. Затем программа определяет, содержит ли введенная последовательность хотя бы одно совершенное число число,равноесуммевсехсвоихделителей,кромесамогосебячисло, равное сумме всех своих делителей, кроме самого себячисло,равноесуммевсехсвоихделителей,кромесамогосебя.

20 Апр 2024 в 03:38
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Гарантированные бесплатные доработки в течение 1 года
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Поможем написать учебную работу
Прямой эфир