Информатика, вопрос задал andrew04s , 7 лет назад

Решить на питоне,
Числовая дружба
оставьте программу для решения задачи. Два натуральных числа называются дружественными, если каждое из них равно сумме всех делителей другого (само другое число в качестве делителя не рассматривается). Например, 220 (1+2+4+5+10+11+20+22+44+55+110=284) и 284 (1+2+4+71+142=220) – дружественные числа. Пары необходимо выводить по одной в строке, разделяя пробелами.
Найти все пары натуральных дружественных чисел, меньших 10 000.

Формат вывода
На каждой строке пара натуральных дружественных чисел, числа в паре расположены в порядке возрастания.

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

Ответил biberovichbiber
0

for i in range(1, 10000):

   k = 0

   n = 0

   for x in range(1, i):

       if i % x == 0:

           k += x

   for j in range(1, k):

       if k % j == 0:

           n += j

   if i == n and i != k and i == min(i, k):

       print(i, k)


Новые вопросы