Вопрос задан 13.04.2021 в 04:55. Предмет Информатика. Спрашивает Пішко Віктор.

Совершенным называется число, равное сумме всех своих делителей, меньших его самого (например,

число 6=1+2+3). Напишите программу, которая вводит натуральное число N и определяет, является ли число N совершенным. Входные данные Входная строка содержит натуральное число N . Выходные данные Если число N – совершенное, программа должна вывести в одну строчку через пробел все делители этого числа, меньшие N . Если число несовершенное, программа должна вывести 0.
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Беккер Вардан.

var n,z,n1,e:integer;

begin

e:=0;

readln(n);

n1:=n div 2;

for z:=1 to n1 do begin

if (n mod z = 0) then e:=e+z;

end;

if (e=n)

then writeln('соверншенное')

else writeln('0');

end.

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Вот программа на Python, которая решает задачу:

python
n = int(input()) # считываем входное число # находим все делители числа n, меньшие его самого divisors = [] for i in range(1, n): if n % i == 0: divisors.append(i) # суммируем найденные делители sum_of_divisors = sum(divisors) # проверяем, является ли число совершенным, и выводим ответ if sum_of_divisors == n: print(*divisors) # выводим все делители через пробел else: print(0)

Пример работы программы:

Входные данные: 6 Выходные данные: 1 2 3 Входные данные: 12 Выходные данные: 0

Обратите внимание на использование оператора * перед списком divisors в команде print(*divisors). Это позволяет вывести элементы списка через пробел, без явного указания разделителя.

0 0

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос