Programme Palindrome en Python
Qu’est-ce que le programme Palindrome Python?
Un palindrome peut être défini comme une chaîne ou un nombre qui affiche la même valeur lorsque sa position est inversée. En un sens plus simple, il reste inchangé une fois inversé.
Example: deed, 101
Lorsque le mot inversé et le mot réel (un nombre ou une chaîne) sont comparés, ils produisent le même résultat.
Types de palindrome
In Python langue, Palindrome est de trois types, comme indiqué ci-dessous :
- Palindrome à plusieurs mots : Il s'agit d'une combinaison de plusieurs mots où la valeur des mots originaux et inversés est la même.
- Palindrome à un seul mot : Il s'agit d'un seul mot où la valeur des mots originaux et inversés est la même.
- Palindrome numérique : Il s'agit d'un nombre dont les valeurs des nombres d'origine et inversés sont les mêmes. L'entrée donnée reste la même, que ce soit de l'avant ou de l'arrière.
Algorithme pour un nombre palindrome dans Python
L'algorithme suivant peut être appliqué pour vérifier le numéro palindrome :
Étape 1) Effectuer une déclaration de variable comme 'I' et lisez la variable.
Étape 2) Attribuer 'I' à la variable temporaire j. je = j
Étape 3) Effectuez la boucle avec les instructions comme indiqué ci-dessous : –
- M = I % 10
- L=L x 10 + M
- je = je / 10
Étape 4) Comparez la variable temporaire avec l. L==J.
Étape 5) Imprimez le nombre comme étant un palindrome si la condition est satisfaite.
Étape 6) Si la condition n'est pas satisfaite, imprimez le numéro comme n'étant pas un palindrome.
Étape 7) Fin
L'algorithme ci-dessus s'applique aux nombres palindromes dans Python.
Méthode 1 : Numéro palindrome dans Python en utilisant le découpage vers l'arrière
Tranchage vers l'arrière Python implique généralement l'utilisation d'instructions de sous-ensemble du programme d'origine. Les instructions de sous-ensemble peuvent également utiliser des boucles. PythonLe programme palindrome de peut être découpé en tranches arrière.
Le programme python suivant utilise une boucle arrière pour déterminer si une chaîne est un palindrome.
Programme de cordes Palindrome dans Python code:
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")
Sortie :
deed is: Palindrome
Explication du code :
- La série Python le code essaie d'ajouter la chaîne vide b dans l'ordre inverse en utilisant la longueur de la chaîne principale et la Python fonction de plage.
- La chaîne b est ensuite jointe à la chaîne vide rev à l'aide du séparateur de chaîne ".
Méthode 2 : Programme Palindrome dans Python en utilisant le drapeau
Les variables d'indicateur peuvent être définies dans Python pour identifier les palindromes. Le paramètre flag est initialisé à 0. Le programme suivant illustre l'utilisation du paramètre flag :
Python Code du programme Palindrome :
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)
Sortie :
deed is: Palindrome 0
Explication du code :
- Le char dans Python commence par un indice 0.
- Puisque m est initialisé à -1, la chaîne est lue du verso comme un index négatif.
- La boucle for avec l'instruction if vérifie si chaque caractère commençant par l'index 0 présent dans la chaîne correspond à l'index inverse de la chaîne.
- Cependant, s'il ne correspond pas, le programme initialise l'indicateur à 1 ; sinon, il l'initialiserait à 0.
Méthode 3 : Vérifiez Palindrome dans Python en inversant le caractère
La méthode char est utilisée pour inverser une chaîne dans ce programme palindrome dans PythonLa chaîne d'origine est vérifiée avec la chaîne inverse pour déterminer si la chaîne est un palindrome ou non.
Python Code du programme Palindrome :
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))
Sortie :
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
Explication du code :
- PythonLa fonction str permet de convertir le format de valeur numérique au format chaîne. Le programme vérifie d'abord si la valeur 123 est un palindrome ou non.
- Il vérifie ensuite la valeur 101 et la valeur de chaîne de l'acte.
- Le code vérifie que la valeur est un palindrome pour les formats numériques et de chaîne.
Méthode 4 : Comment enregistrer Palindrome dans Python utiliser la correspondance de caractères
Dans cette méthode palindrome, le programme vérifie si chaque caractère de la chaîne correspond à la chaîne inversée en utilisant la boucle for, la fonction range et la fonction Len.
Python code:
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")
Sortie :
Not Palindrome
Explication du code :
- Une fonction définie par l'utilisateur intitulée Palindrome Comparator vérifie si la valeur est une chaîne ou non.
- Le programme compare la chaîne d'origine et l'inverse de la chaîne d'origine en utilisant le critères original[i]!= original[len(original) – i – 1].
- Le programme ci-dessus utilise la technique de la longueur pour déterminer la longueur de la chaîne.
Méthode 5 : Palindrome dans Python utiliser la récursivité
In Python, la récursivité signifie que la fonction s'appelle à plusieurs reprises et selon un ensemble spécifique de critères. De cette façon, le problème peut être décomposé en problèmes plus petits en utilisant la même structure fonctionnelle. En utilisant la logique de programmation récursive, les chaînes palindromes peuvent également être vérifiées
Python code:
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")
Sortie :
12321 is: Palindrome
Explication du code :
- Le programme utilise une fonction définie par l'utilisateur qui s'appelle récursivement.
- Le nombre d'origine est décomposé et sa valeur résiduelle est ajoutée à la valeur opposée.
- La valeur opposée est d'abord multipliée par 10 avant d'être ajoutée à la valeur restante.
Méthode 6 : Comment utiliser la boucle While pour vérifier le palindrome
Une boucle while effectue l'exécution du code de manière itérative jusqu'à ce que la condition appliquée soit vraie.
- La méthode itérative peut être utilisée pour vérifier si la valeur entière est palindrome.
- La série Python le programme utilise des nombres temporaires et des opérateurs modulo.
Python code:
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")
Sortie :
Palindrome
Explication du code :
- Le programme utilise une boucle while qui vérifie si le nombre temporaire est inférieur à zéro.
- L'opérateur modulo calcule le reste du nombre d'origine.
- Le nombre initial est divisé par 10.
- Le paramètre inverse est calculé en multipliant par 10.
- Le nombre résultant est ajouté au résidu.
- Le programme ci-dessus vérifie le numéro d'origine et le numéro inversé pour le classer comme palindrome ou non.
Conclusion
- Le palindrome est une valeur comparée dans le sens arrière, et le sens avant devient le même. Il est utilisé dans diverses énigmes mathématiques.
- Plusieurs façons peuvent être adoptées dans Python pour comparer si une valeur est un palindrome ou non. Les techniques utilisées sont : – Découpage arrière, correspondance de caractères, récursivité, utilisation de boucles, fonctions rev, Len et str, fonctions prédéfinies, récursivités, etc.