Palindrom Program be Python
Miben található a Palindrom Program? Python?
A palindrom definiálható karakterláncként vagy számként, amely ugyanazt az értéket jeleníti meg, amikor a pozíciója megfordul. Egyszerűbb értelemben, megfordítva változatlan marad.
Example: deed, 101
Ha a fordított szót és a tényleges szót (számot vagy karakterláncot) összehasonlítjuk, ugyanazt az eredményt adják.
A palindrom típusai
In Python nyelv, a palindrom három típusból áll, az alábbiak szerint:
- Többszavas palindrom: Ez több szó kombinációja, ahol az eredeti és a fordított szavak értéke megegyezik.
- Egyszavas palindrom: Ez egyetlen szó, ahol az eredeti és a fordított szavak értéke megegyezik.
- Számpalindrom: Ez egy olyan szám, ahol az eredeti és a fordított számok értéke megegyezik. A megadott bemenet változatlan marad akár elölről, akár hátulról.
Algoritmus egy palindrom számhoz Python
A következő algoritmus alkalmazható a palindrom szám ellenőrzésére:
Step 1) Változódeklaráció végrehajtása 'I' és olvassa el a változót.
Step 2) Hozzárendelni 'I' j ideiglenes változóhoz. i=j
Step 3) Hajtsa végre a hurkot az alábbi utasítások szerint: –
- M = I % 10
- L=L x 10 + M
- I = I/10
Step 4) Hasonlítsa össze az ideiglenes változót l-lel. L==J.
Step 5) Nyomtassa ki a számot, hogy palindrom legyen, ha a feltétel teljesül.
Step 6) Ha a feltétel nem kielégítő, írja ki a számot nem palindromként.
Step 7) vég
A fenti algoritmus az in palindrom számokra vonatkozik Python.
1. módszer: Palindrom szám be Python a Visszafelé szeletelés használatával
Visszafelé vágás Python általában az eredeti program részhalmaz-utasításainak használatát jelenti. A részhalmaz utasítások ciklusokat is használhatnak. Python's palindrom programja visszafelé szeletelhető.
A következő python program egy visszafelé irányuló ciklust használ annak meghatározására, hogy egy karakterlánc palindrom-e.
Palindrom string program be Python kód:
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")
output:
deed is: Palindrome
Kód magyarázata:
- A Python kód megpróbálja az üres b karakterláncot fordított sorrendben hozzáfűzni a fő karakterlánc hosszának és a Python tartomány funkció.
- A b karakterláncot ezután a string elválasztó segítségével összekapcsoljuk az üres rev karakterlánccal ".
2. módszer: Palindrom Program be Python Flag segítségével
A zászlóváltozók definiálhatók Python palindromák azonosítására. A jelző 0-ra inicializálódik. A következő program bemutatja a flag paraméter használatát:
Python A palindrom program kódja:
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)
output:
deed is: Palindrome 0
Kód magyarázata:
- A char be Python 0 indexszel kezdődik.
- Mivel m inicializálása -1, a karakterlánc a hátoldalról negatív indexként kerül beolvasásra.
- A for ciklus az if utasítással ellenőrzi, hogy a karakterláncban lévő minden 0 indexszel kezdődő karakter egyezik-e a karakterlánc fordított indexével.
- Ha azonban nem egyezik, akkor a program 1-re inicializálja a jelzőt; ellenkező esetben 0-ra inicializálná.
3. módszer: Ellenőrizze a palindromot Python a karakter megfordításával
A char metódus egy karakterlánc megfordítására szolgál ebben a palindrom programban Python. Az eredeti karakterláncot a fordított karakterlánccal ellenőrzik annak megállapítására, hogy a karakterlánc palindrom-e vagy sem.
Python Palindrom programkód:
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))
output:
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
Kód magyarázata:
- Pythonstr függvénye segít a számértékformátumot karakterlánc formátumba konvertálni. A program először ellenőrzi, hogy a 123-as érték palindrom-e vagy sem.
- Ezután ellenőrzi a 101-es értéket és az okirat karakterlánc-értékét.
- A kód ellenőrzi, hogy az érték palindrom-e mind numerikus, mind karakterlánc-formátum esetén.
4. módszer: Hogyan lehet bejelentkezni a palindromba Python karakteregyeztetés segítségével
Ennél a palindrom módszernél a program a for ciklus, a range függvény és a Len függvény segítségével ellenőrzi, hogy a karakterlánc minden karaktere egyezik-e a fordított karakterlánccal.
Python kód:
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")
output:
Not Palindrome
Kód magyarázata:
- A Palindrom Comparator nevű, felhasználó által definiált függvény ellenőrzi, hogy az érték karakterlánc-e vagy sem.
- A program összehasonlítja az eredeti karakterláncot és az eredeti karakterlánc fordítottját a kritérium eredeti[i]!= eredeti[len(eredeti) – i – 1].
- A fenti program a hossza technikát használja a karakterlánc hosszának meghatározásához.
5. módszer: palindrom be Python rekurzió segítségével
In Python, a rekurzió azt jelenti, hogy a függvény ismételten és meghatározott kritériumrendszer szerint hívja meg magát. Ily módon a probléma kisebbekre bontható, ugyanazt a függvényszerkezetet használva. A rekurziós programozási logika használatával a palindrom karakterláncok is ellenőrizhetők
Python kód:
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")
output:
12321 is: Palindrome
Kód magyarázata:
- A program egy felhasználó által definiált függvényt használ, amely rekurzív módon hívja meg magát.
- Az eredeti számot lebontja, és a maradék értékét hozzáadja az ellenkező értékhez.
- Az ellentétes értéket először 10-zel szorozzuk meg, majd hozzáadjuk a maradék értékkel.
6. módszer: A While Loop használata a palindrom ellenőrzésére
A while ciklus iteratív alapon hajtja végre a kód végrehajtását, amíg az alkalmazott feltétel igaz.
- Az iteratív módszerrel ellenőrizhető, hogy az egész érték palindrom-e.
- A Python program ideiglenes számokat és modulo operátorokat használ.
Python kód:
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")
output:
Palindrome
Kód magyarázata:
- A program egy while ciklust használ, amely ellenőrzi, hogy az ideiglenes szám kisebb-e nullánál.
- A modulo operátor kiszámítja az eredeti szám maradékát.
- Az eredeti számot elosztjuk 10-zel.
- A fordított paramétert úgy számítjuk ki, hogy megszorozzuk 10-zel.
- A kapott számot hozzáadjuk a maradékhoz.
- A fenti program ellenőrzi az eredeti számot és a fordított számot, hogy palindromnak minősítse vagy sem.
Összegzés
- A palindrom egy érték, ha visszafelé viszonyítjuk, és az előre irány ugyanaz. Különféle matematikai rejtvényekben használják.
- Többféle módon is alkalmazható Python összehasonlítani, hogy egy érték palindrom-e vagy sem. A használt technikák a következők: – Visszafelé szeletelés, karakterillesztés, rekurzió, hurkok, rev, Len és str függvények, előre definiált függvények, rekurziók stb.