Автоморфные числа — это числа, которые совпадают с последними цифрами их собственного квадрата. Например, число 25 является автоморфным, потому что ( 25^2 = 625 ), и последние две цифры числа 625 совпадают с числом 25.
Для решения задачи, нам нужно написать программу, которая принимает натуральное число ( N ) и выводит все автоморфные числа, не превосходящие ( N ).
Вот пример программы на языке Python, которая решает эту задачу:
def is_automorphic(number):
# Вычисляем квадрат числа
square = number ** 2
# Преобразуем числа в строки, чтобы сравнить последние цифры
number_str = str(number)
square_str = str(square)
# Проверяем, совпадают ли последние цифры
return square_str.endswith(number_str)
def find_automorphic_numbers(N):
automorphic_numbers = []
# Проверяем все числа от 1 до N
for num in range(1, N + 1):
if is_automorphic(num):
automorphic_numbers.append(num)
return automorphic_numbers
# Вводим натуральное число N
N = int(input("Введите натуральное число N: "))
# Находим и выводим все автоморфные числа, не превосходящие N
automorphic_numbers = find_automorphic_numbers(N)
print("Автоморфные числа, не превосходящие", N, ":", automorphic_numbers)
Объяснение работы программы:
Функция is_automorphic
:
- Принимает число
number
и вычисляет его квадрат.
- Преобразует число и его квадрат в строки, чтобы можно было легко сравнить последние цифры.
- Использует метод
endswith
для проверки, совпадают ли последние цифры квадрата с самим числом.
Функция find_automorphic_numbers
:
- Проходит по всем числам от 1 до ( N ).
- Использует функцию
is_automorphic
, чтобы определить, является ли число автоморфным.
- Собирает все автоморфные числа в список
automorphic_numbers
.
Основной блок программы:
- Запрашивает у пользователя ввод натурального числа ( N ).
- Вызывает функцию
find_automorphic_numbers
и выводит результат.
Таким образом, программа выводит все автоморфные числа, которые не превышают заданное число ( N ).