Дано натуральное число N найдите сумму всех простых делителей этого числа и проверьте, не является ли полученная сумма полиндродано натуральное число N найдите сумму всех простых делителей этого числа и проверьте, не является ли полученная сумма полиндромом
Входные данные: натуральное число N, N<=10^4
Выходные данные: Программа должна вывести сумму всех простых делителей этого числа, если сумма является полиндромом, то вывести "да", в противном случае- "нет".

21 Сен 2019 в 12:41
247 +1
0
Ответы
1

Пример:

Input:
24

Output:
5
нет

Input:
131

Output:
5
да

Input:
13

Output:
2
нет

Для решения данной задачи можно использовать следующий код на Python:

def is_prime(n):
if n < 2:
return False
for i in range(2, int(n**0.5) + 1):
if n % i == 0:
return False
return True
def sum_of_prime_divisors(n):
sum = 0
for i in range(2, n+1):
if n % i == 0 and is_prime(i):
sum += i
return sum
def is_palindrome(n):
return str(n) == str(n)[::-1]
N = int(input())
sum_of_divisors = sum_of_prime_divisors(N)
print(sum_of_divisors)
if is_palindrome(sum_of_divisors):
print("да")
else:
print("нет")
19 Апр 2024 в 20:42
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Гарантированные бесплатные доработки в течение 1 года
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Поможем написать учебную работу
Прямой эфир