Опубликован: 07.11.2024 52
Условие: наибольший палиндром, полученный из произведения двух двухзначных чисел, равен: 9009 = 91 * 99
Найдите наибольший палиндром, полученный из произведения двух трехзначных чисел.
Палиндром — это число, которое читается одинаково вперёд и назад. Другими словами, оно остаётся неизменным, когда его цифры переворачиваются.
Решение:
# функция проверки числа на палиндром
def is_palindrome(num):
str_num = str(num)
if str_num == str_num[::-1]:
return True
return False
# поиск наибольшего палиндрома, полученного произведением двух трехзначных цифр
def largest_palindrom():
for n1 in range(999, 99, -1):
for n2 in range(999, 99, -1):
num = n1 * n2
if is_palindrome(num):
return (num, n1, n2)
lp = largest_palindrom()
print(f"Наибольший палиндром: "
f"{lp[0]} = {lp[1]} * {lp[2]}")
# Наибольший палиндром: 580085 = 995 * 583
Задача: Решение квадратного уравнения
Задача: Тренажер таблицы умножения
Задача: Разложение числа на простые множители
Задача: Наибольший общий делитель
Комментариев нет.