Πρόγραμμα Palindrome σε Python
⚡ Έξυπνη Σύνοψη
Προγράμματα παλινδρομίας στο Python Ελέγξτε αν μια συμβολοσειρά ή ένας αριθμός διαβάζεται το ίδιο προς τα εμπρός και προς τα πίσω. Συνήθεις προσεγγίσεις περιλαμβάνουν την ανάποδη τεμαχισμό, τη σύγκριση σημαιών, την αντιστροφή χαρακτήρων, την αντιστοίχιση χαρακτήρων, την αναδρομή και τεχνικές επανάληψης while τόσο για τιμές κειμένου όσο και για αριθμητικές τιμές.

Τι περιλαμβάνει το πρόγραμμα Palindrome Python?
Ένα Palindrome μπορεί να οριστεί ως μια συμβολοσειρά ή ένας αριθμός που εμφανίζει την ίδια τιμή όταν η θέση του αντιστρέφεται. Με μια απλούστερη έννοια, παραμένει αναλλοίωτο όταν αντιστρέφεται.
Example: deed, 101
Όταν η αντίστροφη λέξη και η πραγματική λέξη, (ένας αριθμός ή μια συμβολοσειρά) συγκρίνονται, παράγουν το ίδιο αποτέλεσμα.
Τύποι Palindrome
In Python Γλώσσα, Το Palindrome είναι τριών τύπων, όπως αναφέρονται παρακάτω:
- Πάλινδρομο πολλαπλών λέξεων: Αυτός είναι ένας συνδυασμός πολλών λέξεων όπου η αξία της αρχικής και της αντίστροφης λέξης είναι η ίδια.
- Μονολεκτικό παλίνδρομο: Αυτή είναι μια μεμονωμένη λέξη όπου η αξία της αρχικής και της αντίστροφης λέξης είναι η ίδια.
- Αριθμός παλίνδρομο: Αυτός είναι ένας αριθμός όπου οι τιμές του αρχικού και του αντίστροφου αριθμού είναι ίδιες. Η δεδομένη είσοδος παραμένει η ίδια είτε από την εμπρός είτε από την πίσω πλευρά.
Αλγόριθμος για έναν αριθμό Palindrome in Python
Ο ακόλουθος αλγόριθμος μπορεί να εφαρμοστεί για τον έλεγχο του αριθμού παλίνδρομου:
Βήμα 1) Εκτελέστε δήλωση μεταβλητής ως 'Iκαι διαβάστε τη μεταβλητή.
Βήμα 2) Εκχώρηση 'I' στην προσωρινή μεταβλητή j. i=j
Βήμα 3) Εκτελέστε το βρόχο με τις οδηγίες όπως φαίνεται παρακάτω: –
- M=I % 10
- L=L x 10 + M
- I = I / 10
Βήμα 4) Συγκρίνετε την προσωρινή μεταβλητή με τη l. L==J.
Βήμα 5) Εκτυπώστε τον αριθμό για να είναι παλίνδρομο εάν η συνθήκη ικανοποιείται.
Βήμα 6) Εάν η συνθήκη δεν ικανοποιεί, εκτυπώστε τον αριθμό ως μη παλίνδρομο.
Βήμα 7) Τέλος
Ο παραπάνω αλγόριθμος ισχύει για παλίνδρομους αριθμούς στο Python.
Μέθοδος 1: Αριθμός Palindrome in Python χρησιμοποιώντας το Backward Slicing
Κόψιμο προς τα πίσω Python γενικά περιλαμβάνει τη χρήση δηλώσεων υποσυνόλου από το αρχικό πρόγραμμα. Οι δηλώσεις υποσυνόλου μπορούν επίσης να χρησιμοποιούν βρόχους. PythonΤο πρόγραμμα palindrome του 's μπορεί να τεμαχιστεί προς τα πίσω.
Το ακόλουθο πρόγραμμα python χρησιμοποιεί έναν βρόχο προς τα πίσω για να προσδιορίσει εάν μια συμβολοσειρά είναι παλίνδρομο.
Πρόγραμμα χορδών Palindrome σε 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")
Παραγωγή:
deed is: Palindrome
Code Επεξήγηση:
- The Python Ο κώδικας προσπαθεί να προσαρτήσει την κενή συμβολοσειρά b με αντίστροφη σειρά χρησιμοποιώντας το μήκος της κύριας συμβολοσειράς και το Python λειτουργία εμβέλειας.
- Στη συνέχεια, η συμβολοσειρά b ενώνεται με την κενή σειρά στροφών χρησιμοποιώντας το διαχωριστικό συμβολοσειράς ".
Μέθοδος 2: Πρόγραμμα Palindrome in Python χρησιμοποιώντας Σημαία
Οι μεταβλητές επισήμανσης μπορούν να οριστούν σε Python για τον εντοπισμό παλινδρόμων. Η σημαία αρχικοποιείται σε 0. Το ακόλουθο πρόγραμμα απεικονίζει τη χρήση της παραμέτρου σημαίας:
Python Code για το Πρόγραμμα Παλίνδρομου:
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
Code Επεξήγηση:
- Το char in Python ξεκινά με δείκτη 0.
- Εφόσον το m έχει αρχικοποιηθεί ως -1, η συμβολοσειρά διαβάζεται από την πίσω πλευρά ως αρνητικός δείκτης.
- Ο βρόχος for με τη δήλωση if ελέγχει εάν κάθε χαρακτήρας που ξεκινά με το δείκτη 0 που υπάρχει στη συμβολοσειρά ταιριάζει με τον αντίστροφο δείκτη της συμβολοσειράς.
- Ωστόσο, εάν δεν ταιριάζει, τότε το πρόγραμμα αρχικοποιεί τη σημαία ως 1. Διαφορετικά, θα το αρχικοποιούσε ως 0.
Μέθοδος 3: Ελέγξτε το Palindrome in Python με αντιστροφή χαρακτήρα
Η μέθοδος char χρησιμοποιείται για την αντιστροφή μιας συμβολοσειράς σε αυτό το πρόγραμμα παλίνδρομου in Python. Η αρχική συμβολοσειρά ελέγχεται με την αντίστροφη συμβολοσειρά για να καθοριστεί εάν η συμβολοσειρά είναι παλίνδρομος ή όχι.
Python Πρόγραμμα Παλίνδρομου Code:
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
Code Επεξήγηση:
- PythonΗ συνάρτηση str βοηθά στη μετατροπή της μορφής αριθμητικής τιμής σε μορφή συμβολοσειράς. Το πρόγραμμα πρώτα ελέγχει εάν η τιμή 123 είναι παλίνδρομο ή όχι.
- Στη συνέχεια, ελέγχει την τιμή του 101 και την τιμή συμβολοσειράς της πράξης.
- Ο κώδικας ελέγχει εάν η τιμή είναι παλίνδρομο και για τη μορφή αριθμητικών και συμβολοσειρών.
Μέθοδος 4: Πώς να ελέγξετε το Palindrome in Python χρησιμοποιώντας Αντιστοίχιση χαρακτήρων
Σε αυτήν τη μέθοδο παλίνδρομου, το πρόγραμμα ελέγχει εάν κάθε χαρακτήρας στη συμβολοσειρά ταιριάζει με την αντίστροφη συμβολοσειρά χρησιμοποιώντας τον βρόχο for, τη συνάρτηση εμβέλειας και τη συνάρτηση 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")
Παραγωγή:
Not Palindrome
Code Επεξήγηση:
- Μια συνάρτηση που ορίζεται από το χρήστη με την ένδειξη ως Palindrome Comparator ελέγχει εάν η τιμή είναι συμβολοσειρά ή όχι.
- Το πρόγραμμα συγκρίνει την αρχική συμβολοσειρά και την αντίστροφη της αρχικής συμβολοσειράς χρησιμοποιώντας τα κριτήρια πρωτότυπο[i]!= πρωτότυπο[len(πρωτότυπο) – i – 1].
- Το παραπάνω πρόγραμμα χρησιμοποιεί την τεχνική του μήκους για να καθορίσει το μήκος της συμβολοσειράς.
Μέθοδος 5: Palindrome in Python χρησιμοποιώντας αναδρομή
In Python, αναδρομή σημαίνει ότι η συνάρτηση καλεί τον εαυτό της επανειλημμένα και σύμφωνα με ένα συγκεκριμένο σύνολο κριτηρίων. Με αυτόν τον τρόπο, το πρόβλημα μπορεί να αναλυθεί σε μικρότερα χρησιμοποιώντας την ίδια δομή λειτουργίας. Χρησιμοποιώντας τη λογική προγραμματισμού αναδρομής, μπορούν επίσης να ελεγχθούν οι συμβολοσειρές παλίνδρομου
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")
Παραγωγή:
12321 is: Palindrome
Code Επεξήγηση:
- Το πρόγραμμα κάνει χρήση μιας συνάρτησης που ορίζεται από το χρήστη που καλεί τον εαυτό του αναδρομικά.
- Ο αρχικός αριθμός αναλύεται και η υπολειπόμενη τιμή του προστίθεται στην αντίθετη τιμή.
- Η αντίθετη τιμή πολλαπλασιάζεται πρώτα με το 10 πριν προστεθεί με την υπόλοιπη τιμή.
Μέθοδος 6: Πώς να χρησιμοποιήσετε το while Loop για να ελέγξετε το Palindrome
Ένας βρόχος while εκτελεί την εκτέλεση του κώδικα σε επαναληπτική βάση μέχρι να είναι αληθής η συνθήκη που εφαρμόζεται.
- Η επαναληπτική μέθοδος μπορεί να χρησιμοποιηθεί για να ελέγξει εάν η ακέραια τιμή είναι παλινδρομική.
- The Python Το πρόγραμμα κάνει χρήση προσωρινών αριθμών και τελεστών 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")
Παραγωγή:
Palindrome
Code Επεξήγηση:
- Το πρόγραμμα χρησιμοποιεί έναν βρόχο while που ελέγχει εάν ο προσωρινός αριθμός είναι μικρότερος από το μηδέν.
- Ο τελεστής modulo υπολογίζει το υπόλοιπο του αρχικού αριθμού.
- Ο αρχικός αριθμός διαιρείται με το 10.
- Η αντίστροφη παράμετρος υπολογίζεται πολλαπλασιάζοντας με το 10.
- Ο αριθμός που προκύπτει προστίθεται στο υπόλοιπο.
- Το παραπάνω πρόγραμμα ελέγχει τον αρχικό αριθμό και τον αντίστροφο αριθμό για να τον ταξινομήσει ως παλίνδρομο ή όχι.
