кодесурса
«Python

Python Math: сумма всех дружных чисел от 1 до указанных чисел

script1adsense2code
script1adsense3code

Python Math: Упражнение-14 с решением

Напишите программу на Python для суммирования всех дружных чисел от 1 до указанных чисел.
Примечание. Дружественные числа - это два разных числа, связанных между собой так, что сумма правильных делителей каждого равна другому числу. (Правильный делитель числа является положительным фактором этого числа, кроме самого числа. Например, правильные делители числа 6 равны 1, 2 и 3.)

Пример решения : -

Код Python:

def amicable_numbers_sum(limit):
    if not isinstance(limit, int):
        return "Input is not an integer!"
    if limit < 1:
        return "Input must be bigger than 0!"
    amicables = set()
    for num in range(2, limit+1):
        if num in amicables:
            continue
        sum_fact = sum([fact for fact in range(1, num) if num % fact == 0])
        sum_fact2 = sum([fact for fact in range(1, sum_fact) if sum_fact % fact == 0])
        if num == sum_fact2 and num != sum_fact:
            amicables.add(num)
            amicables.add(sum_fact2)
    return sum(amicables)
print(amicable_numbers_sum(9999))
print(amicable_numbers_sum(999))
print(amicable_numbers_sum(99))

Пример вывода:

 31626                                                                                                         
504                                                                                                           
0

Иллюстрированная презентация:

«Python

Блок - схема:

«Блок-схема:

Визуализируйте выполнение кода Python:

Следующий инструмент визуализирует, что компьютер делает шаг за шагом при выполнении указанной программы:

Редактор кода Python:

Есть другой способ решить это решение? Внесите свой код (и комментарии) через Disqus.

Предыдущий: Напишите программу на Python, чтобы узнать, достаточно ли заданного числа.
Далее: написать программу на Python, которая возвращает сумму всех делителей числа.

Каков уровень сложности этого упражнения?

Новый контент: Composer: менеджер зависимостей для PHP , R программирования


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code