Программа Палиндром в Python
Что такое программа Палиндром? Python?
Палиндром можно определить как строку или число, которое отображает то же значение, когда его положение меняется на противоположное. Проще говоря, он остается неизменным при переворачивании.
Example: deed, 101
Когда обратное слово и фактическое слово (число или строка) сравниваются, они дают один и тот же результат.
Виды палиндрома
In Python язык, Палиндром бывает трех типов, перечисленных ниже:
- Палиндром из нескольких слов: Это комбинация нескольких слов, в которой значение исходного и перевернутого слов одинаково.
- Палиндром из одного слова: Это одно слово, в котором значения исходного и перевернутого слов одинаковы.
- Числовой палиндром: Это число, у которого значения исходного и перевернутого чисел одинаковы. Данный вход остается неизменным как с прямой, так и с обратной стороны.
Алгоритм вычисления числа палиндрома в Python
Для проверки номера палиндрома можно применить следующий алгоритм:
Шаг 1) Выполните объявление переменной как 'I' и прочитать переменную.
Шаг 2) Назначать 'I' во временную переменную j. я = j
Шаг 3) Выполните цикл, следуя инструкциям, как показано ниже: –
- М=Я % 10
- Д = Д х 10 + М
- Я = Я / 10
Шаг 4) Сравните временную переменную с l. Л == Дж.
Шаг 5) Выведите число, которое будет палиндромом, если условие выполнено.
Шаг 6) Если условие не удовлетворяет, выведите число как непалиндром.
Шаг 7) Конец
Вышеуказанный алгоритм применяется к палиндромным числам в Python.
Метод 1: число палиндромов в Python использование обратного среза
Обратная нарезка Python обычно предполагает использование подмножества операторов из исходной программы. Операторы подмножества также могут использовать циклы. Pythonпрограмму палиндрома можно разрезать назад.
Следующая программа на Python использует обратный цикл, чтобы определить, является ли строка палиндромом.
Строковая программа-палиндром в Python код:
a='deed' lena=len(a) b=[] for i in range(lena - 1, -1, -1): b.append(a[i]) rev = "".join(b) print(a + " is: ", end="") if a == rev: print("Palindrome") else: print("Not Palindrome")
Вывод:
deed is: Palindrome
Пояснение к коду:
- The Python код пытается добавить пустую строку b в обратном порядке, используя длину основной строки и Python функция диапазона.
- Затем строка b соединяется с пустой строкой rev с помощью разделителя строк. .
Метод 2: Программа-палиндром в Python использование флага
Переменные флага могут быть определены в Python для определения палиндромов. Флаг инициализируется значением 0. Следующая программа иллюстрирует использование параметра флага:
Python Код для программы «Палиндром»:
Pld = "deed" m = -1 flag = 0 for char in Pld: if char != Pld[m]: flag = 1 break m = m - 1 print(Pld + " is: ", end="") if flag: print("Not Palindrome") else: print("Palindrome") print(flag)
Вывод:
deed is: Palindrome 0
Пояснение к коду:
- Символ в Python начинается с индекса 0.
- Поскольку m инициализируется как -1, строка считывается с обратной стороны как отрицательный индекс.
- Цикл for с оператором if проверяет, соответствует ли каждый символ, начинающийся с индекса 0, присутствующий в строке, с обратным индексом строки.
- Однако, если он не совпадает, программа инициализирует флаг как 1; в противном случае он инициализирует его как 0.
Способ 3: проверьте палиндром Python путем изменения характера
Метод char используется для переворота строки в этой программе-палиндроме Python. Исходная строка сверяется с обратной строкой, чтобы определить, является ли строка палиндромом или нет.
Python Код программы Палиндром:
Base = "123" reverse = "" for char in Base: reverse = char + reverse print("Palindrome") if Base == reverse else print("Not Palindrome") print("Original string is: " + str(Base)) print("reverse string is: " + str(reverse)) Base = "101" reverse = "" for char in Base: reverse = char + reverse print("Palindrome") if Base == reverse else print("Not Palindrome") print("Original string is: " + str(Base)) print("reverse string is: " + str(reverse)) Base = "deed" reverse = "" for char in Base: reverse = char + reverse print("Palindrome") if Base == reverse else print("Not Palindrome") print("Original string is: " + str(Base)) print("reverse string is: " + str(reverse))
Вывод:
Not Palindrome The original string is: 123 The reverse string is: 321 Palindrome The original string is: 101 The reverse string is: 101 Palindrome The original string is: the deed The reverse string is: the deed
Пояснение к коду:
- PythonФункция str помогает преобразовать формат числовых значений в строковый формат. Программа сначала проверяет, является ли значение 123 палиндромом или нет.
- Затем он проверяет значение 101 и строковое значение документа.
- Код проверяет, является ли значение палиндромом как для числового, так и для строкового формата.
Способ 4: Как проверить палиндром Python использование сопоставления символов
В этом методе палиндрома программа проверяет, соответствует ли каждый символ в строке обратной строке, используя цикл for, функцию диапазона и функцию Len.
Python код:
def PalindromeComparator(original): for i in range(0, len(original)): if original[i] != original[len(original) - i - 1]: return False return True Base = "deed" print("Palindrome") if PalindromeComparator(Base) else print("Not Palindrome")
Вывод:
Not Palindrome
Пояснение к коду:
- Пользовательская функция, помеченная как Palindrome Comparator, проверяет, является ли значение строкой или нет.
- Программа сравнивает исходную строку и обратную исходную строку, используя критерии original[i]!= original[len(оригинал) – i – 1].
- В приведенной выше программе используется метод определения длины строки.
Способ 5: Палиндром в Python использование рекурсии
In PythonРекурсия означает, что функция вызывает себя неоднократно и в соответствии с определенным набором критериев. Таким образом, проблему можно разбить на более мелкие, используя ту же структуру функций. Используя логику рекурсивного программирования, можно также проверять строки-палиндромы.
Python код:
def palcomprec(number, oppo): if number == 0: return oppo remainder = int(number % 10) oppo = (oppo * 10) + remainder return palcomprec(int(number / 10), oppo) Base = 12321 reverse = 0 reverse = palcomprec(Base, reverse) print(str(Base) + " is: ", end="") print("Palindrome") if reverse == Base else print("Not Palindrome")
Вывод:
12321 is: Palindrome
Пояснение к коду:
- Программа использует определяемую пользователем функцию, которая рекурсивно вызывает сама себя.
- Исходное число разбивается, а его остаточная стоимость прибавляется к противоположному значению.
- Противоположное значение сначала умножается на 10, а затем добавляется к остатку.
Метод 6: Как использовать цикл While для проверки палиндрома
Цикл while выполняет выполнение кода итеративно, пока примененное условие не станет истинным.
- Итерационный метод можно использовать для проверки того, является ли целочисленное значение палиндромом.
- The Python программа использует временные числа и операторы деления по модулю.
Python код:
original = 101 temporary = original reverse = 0 while temporary > 0: remainder = temporary % 10 reverse = (reverse * 10) + remainder temporary = temporary // 10 if original == reverse: print('Palindrome') else: print("Not Palindrome")
Вывод:
Palindrome
Пояснение к коду:
- Программа использует цикл while, который проверяет, меньше ли временное число нуля.
- Оператор по модулю вычисляет остаток исходного числа.
- Исходное число делится на 10.
- Обратный параметр рассчитывается путем умножения на 10.
- Полученное число прибавляется к остатку.
- Приведенная выше программа проверяет исходное число и обратное число, чтобы классифицировать его как палиндром или нет.
Заключение
- Палиндром — это значение при сравнении в обратном направлении, а прямое направление оказывается таким же. Он используется в различных математических головоломках.
- В Python для сравнения, является ли значение палиндромом или нет. Используются следующие методы: – Обратное нарезание, Сопоставление символов, Рекурсия, Использование циклов, функций rev, Len и str, предопределенных функций, рекурсий и т. д.