Πρόγραμμα Palindrome σε Python

Τι περιλαμβάνει το πρόγραμμα Palindrome Python?

Ένα Palindrome μπορεί να οριστεί ως μια συμβολοσειρά ή ένας αριθμός που εμφανίζει την ίδια τιμή όταν η θέση του αντιστρέφεται. Με μια απλούστερη έννοια, παραμένει αναλλοίωτο όταν αντιστρέφεται.

Example: deed, 101

Όταν η αντίστροφη λέξη και η πραγματική λέξη, (ένας αριθμός ή μια συμβολοσειρά) συγκρίνονται, παράγουν το ίδιο αποτέλεσμα.

Παλίνδρομο μέσα Python

Τύποι 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

Επεξήγηση κώδικα:

  • Τα Διαχωριστικά Python Ο κώδικας προσπαθεί να προσαρτήσει την κενή συμβολοσειρά b με αντίστροφη σειρά χρησιμοποιώντας το μήκος της κύριας συμβολοσειράς και το Python λειτουργία εμβέλειας.
  • Στη συνέχεια, η συμβολοσειρά b ενώνεται με την κενή σειρά στροφών χρησιμοποιώντας το διαχωριστικό συμβολοσειράς ".

Μέθοδος 2: Πρόγραμμα Palindrome in Python χρησιμοποιώντας Σημαία

Οι μεταβλητές επισήμανσης μπορούν να οριστούν σε Python για τον εντοπισμό παλινδρόμων. Η σημαία αρχικοποιείται σε 0. Το ακόλουθο πρόγραμμα απεικονίζει τη χρήση της παραμέτρου σημαίας:

Python Κωδικός για το πρόγραμμα 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)

Παραγωγή:

deed is: Palindrome

0

Επεξήγηση κώδικα:

  • Το char in Python ξεκινά με δείκτη 0.
  • Εφόσον το m έχει αρχικοποιηθεί ως -1, η συμβολοσειρά διαβάζεται από την πίσω πλευρά ως αρνητικός δείκτης.
  • Ο βρόχος for με τη δήλωση if ελέγχει εάν κάθε χαρακτήρας που ξεκινά με το δείκτη 0 που υπάρχει στη συμβολοσειρά ταιριάζει με τον αντίστροφο δείκτη της συμβολοσειράς.
  • Ωστόσο, εάν δεν ταιριάζει, τότε το πρόγραμμα αρχικοποιεί τη σημαία ως 1. Διαφορετικά, θα το αρχικοποιούσε ως 0.

Μέθοδος 3: Ελέγξτε το Palindrome in Python με αντιστροφή χαρακτήρα

Η μέθοδος char χρησιμοποιείται για την αντιστροφή μιας συμβολοσειράς σε αυτό το πρόγραμμα παλίνδρομου in Python. Η αρχική συμβολοσειρά ελέγχεται με την αντίστροφη συμβολοσειρά για να καθοριστεί εάν η συμβολοσειρά είναι παλίνδρομος ή όχι.

Python Κωδικός προγράμματος 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))

Παραγωγή:

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: Πώς να ελέγξετε το 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

Επεξήγηση κώδικα:

  • Μια συνάρτηση που ορίζεται από το χρήστη με την ένδειξη ως Palindrome Comparator ελέγχει εάν η τιμή είναι συμβολοσειρά ή όχι.
  • Το πρόγραμμα συγκρίνει την αρχική συμβολοσειρά και το αντίστροφο της αρχικής συμβολοσειράς χρησιμοποιώντας το κριτήρια original[i]!= original[len(original) – 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

Επεξήγηση κώδικα:

  • Το πρόγραμμα κάνει χρήση μιας συνάρτησης που ορίζεται από το χρήστη που καλεί τον εαυτό του αναδρομικά.
  • Ο αρχικός αριθμός αναλύεται και η υπολειπόμενη τιμή του προστίθεται στην αντίθετη τιμή.
  • Η αντίθετη τιμή πολλαπλασιάζεται πρώτα με το 10 πριν προστεθεί με την υπόλοιπη τιμή.

Μέθοδος 6: Πώς να χρησιμοποιήσετε το while Loop για να ελέγξετε το Palindrome

Ένας βρόχος while εκτελεί την εκτέλεση του κώδικα σε επαναληπτική βάση μέχρι να είναι αληθής η συνθήκη που εφαρμόζεται.

  • Η επαναληπτική μέθοδος μπορεί να χρησιμοποιηθεί για να ελέγξει εάν η ακέραια τιμή είναι παλινδρομική.
  • Τα Διαχωριστικά 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

Επεξήγηση κώδικα:

  • Το πρόγραμμα χρησιμοποιεί έναν βρόχο while που ελέγχει εάν ο προσωρινός αριθμός είναι μικρότερος από το μηδέν.
  • Ο τελεστής modulo υπολογίζει το υπόλοιπο του αρχικού αριθμού.
  • Ο αρχικός αριθμός διαιρείται με το 10.
  • Η αντίστροφη παράμετρος υπολογίζεται πολλαπλασιάζοντας με το 10.
  • Ο αριθμός που προκύπτει προστίθεται στο υπόλοιπο.
  • Το παραπάνω πρόγραμμα ελέγχει τον αρχικό αριθμό και τον αντίστροφο αριθμό για να τον ταξινομήσει ως παλίνδρομο ή όχι.

Συμπέρασμα

  • Το παλίνδρομο είναι μια τιμή όταν συγκρίνεται από την προς τα πίσω κατεύθυνση και η κατεύθυνση προς τα εμπρός είναι η ίδια. Χρησιμοποιείται σε διάφορα μαθηματικά παζλ.
  • Μπορούν να υιοθετηθούν αρκετοί τρόποι Python για να συγκρίνετε εάν μια τιμή είναι παλίνδρομο ή όχι. Οι τεχνικές που χρησιμοποιούνται είναι: – Τεμαχισμός προς τα πίσω, Ταίριασμα χαρακτήρων, Αναδρομή, Χρήση βρόχων, συναρτήσεις rev, Len και str, προκαθορισμένες συναρτήσεις, αναδρομές κ.λπ.