Автор оригинала: Pankaj Kumar.
Привет, ученик! Сегодня мы узнаем о серии палиндромов и о том, как реализовать и идентифицировать палиндром в Python. Так что давайте погрузимся прямо в это!
Что такое палиндром?
Число определяется как Число палиндрома , если оно читается одинаково как вперед, так и назад. И самое безумное, что это справедливо не только для чисел. Даже если строка читается одинаково вперед и назад, то это тоже палиндром!
Давайте рассмотрим несколько примеров, чтобы лучше понять это.
Что такое серия палиндромов?
1. Палиндромные числа
Рассмотрим два числа: 123321 и 1234561.
Первый номер 123321 , при чтении вперед и назад-это одно и то же число. Следовательно, это число палиндрома.
С другой стороны, 1234561 , при чтении назад-1654321, что определенно не совпадает с исходным числом. Следовательно, это не число Палиндрома.
2. Строки Палиндрома
Логика, которая была объяснена для чисел палиндрома, также применима к строкам. Давайте рассмотрим две основные строки: aba и abc.
Строка aba , читается одинаково независимо от того, как она читается (назад или вперед). Но, с другой стороны, строка abc при обратном чтении приводит к cba , которая не эквивалентна исходной строке.
Следовательно, aba-это палиндром, а abc-нет.
Как проверить наличие палиндрома?
1. Палиндромные числа
Чтобы проверить, является ли число числом палиндрома или нет, мы сначала берем ввод числа, создаем копию числа, взятого в качестве ввода.
Затем мы создаем новую переменную для хранения перевернутого числа и инициализируем ее 0.
Пройдите через число, используя mod 10 и операции деления на 10, и в каждом цикле обязательно добавьте цифру в переменную обратного числа*10.
2. Строки Палиндрома
Чтобы проверить наличие строки, мы берем строку в качестве входных данных и вычисляем ее длину . Мы также инициализируем пустую строку для хранения обратной строки.
Мы создаем цикл уменьшения, начиная с последнего индекса и переходя к первому, и каждый раз объединяем текущую перевернутую строку с полученной новой буквой.
Псевдокод для реализации палиндрома в Python
1. Палиндромные числа
READ n CREATE A COPY OF n as c_n CREATE r_v = 0 ( to store reversed number) WHILE n!=0: d=n%10 r_v=r_v*10+d n=n/10 if(c_n == r_v): print "PALINDROME" else: print "NOT PALINDROME"
2. Строки Палиндрома
READ s CALCULATE length of s l_s CREATE r_s = "" ( to store reversed string) FOR i: l_s-1 -> 0 r_s + = s[i] if(r_s == s): PRINT "PALINDROME" else: PRINT "NOT PALINDROME"
Код для реализации проверки палиндрома в Python
Теперь, когда вы знаете, что такое палиндромы и как с ними обращаться в случае строк и чисел, позвольте мне показать вам код для обоих.
1. Реализация палиндрома: Числа
Давайте проверим номера палиндромов с помощью Python.
n = input() n = int(n) copy_n=n result = 0 while(n!=0): digit = n%10 result = result*10 + digit n=int(n/10) print("Result is: ", result) if(result==copy_n): print("Palindrome!") else: print("Not a Palindrome!")
2. Реализация палиндрома: Строки
Теперь давайте проверим наличие строк палиндрома в Python
s = input() l_s=len(s) r_s="" for i in range(l_s-1,-1,-1): r_s+=s[i] print("Reuslt is: ",r_s) if(r_s==s): print("PALINDROME") else: print("NOT PALINDROME")
Палиндромные числа
123321 Result is: 123321 Palindrome!
Строки палиндрома
aibohphobia Reuslt is: aibohphobia PALINDROME
Вывод
Поздравляю! Сегодня в этом уроке вы узнали о палиндромах и о том, как их реализовать! Надеюсь, вы чему-то научились! Спасибо, что прочитали!