Напишите функцию, которая будет проверять, является ли целое число совершенным числом.

Совершенное число — натуральное число, равное сумме всех своих собственных делителей (то есть всех положительных делителей, отличных от самого числа).

Например, 6 — совершенное число, поскольку 1 + 2 + 3 = 6, а 1, 2 и 3 — делители числа 6.

Аналогично, совершенным числом является 28, поскольку 1 + 2 + 4 + 7 + 14 = 28.

Примеры

check_perfect(6) ➞ True

check_perfect(28) ➞ True

check_perfect(496) ➞ True

check_perfect(12) ➞ False

check_perfect(97) ➞ False

Варианты решений

def check_perfect(num):
    return sum([i for i in range(1, num) if num%i==0]) == num
def check_perfect(num):
    factors = []
    for i in range(1,num):
        if num % i == 0:
            factors.append(i)
    return sum(factors) == num

Марина

Recent Posts

7 наилучших библиотек визуализации Python на 2024 год

Python предлагает набор библиотек, удовлетворяющих различные потребности в визуализации, будь то академические исследования, бизнес-аналитика или…

2 дня ago

Как преобразовать строку в байты в Python

В Python для представления данных в двоичной форме можно использовать байты. Из этой статьи вы…

2 недели ago

Что такое Werkzeug?

В этой статье рассказывается о том, что такое Werkzeug и как Flask использует его для…

2 недели ago

Как прибавить дни, месяцы и годы к дате в Python

При работе с датами часто возникает необходимость прибавлять к дате или вычитать из нее различные…

3 недели ago

Социальная аутентификация в приложении на Flask

В этом руководстве мы рассмотрим, как добавить социальную аутентификацию с помощью GitHub и Google в…

1 месяц ago

Проверка типов в Python

В этой статье мы рассмотрим, что такое подсказки типов и чем они могут быть полезны.…

1 месяц ago