Вопрос задан 08.06.2023 в 13:17. Предмет Информатика. Спрашивает Калита Мирослав.

Дружественные числа Дружественные числа -– это два натуральных числа, таких, что сумма всех

делителей одного числа (меньших самого этого числа) равна другому числу, и наоборот. Напишите программу, которая проверяет пару чисел на "дружественность". Используйте функцию, которая вычисляет сумму делителей числа.Входные данныеВходная строка содержит два натуральных числа.Выходные данныеПрограмма должна вывести слово 'YES', если полученные числа – дружественные, и слово 'NO' в противном случае.Примерывходные данные220 284выходные данныеYESвходные данные1210 1092выходные данныеNOpython
0 0
Перейти к ответам

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

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

def sum_of_divisors(n):

   sum = 0

   for i in range(1, n):

       if n % i == 0:

           sum += i

   return sum

def are_friendly(a, b):

   sum_a = sum_of_divisors(a)

   sum_b = sum_of_divisors(b)

   return sum_a == b and sum_b == a

a = int(input("Enter the first number: "))

b = int(input("Enter the second number: "))

if are_friendly(a, b):

   print("YES")

else:

   print("NO")

0 0

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

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

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