Přejít na hlavní obsah

Jak zjistím, zda je číslo palindrom v jazyce Python? - Kompletní průvodce

Palindrom je číslo nebo text, který se čte stejně zprava doleva a zleva doprava. Například čísla " 121 " a "1331" jsou palindromy. Kontrola, zda je číslo palindrom, je častým úkolem v programování a může být zvláště užitečná při práci s čísly a řádky v jazyce Python.

V této příručce se podíváme na různé přístupy ke kontrole čísla na palindromitu v Pythonu. Začneme jednoduchou a intuitivní metodou, která navrhuje rozdělit číslo na jednotlivá čísla a zkontrolovat jejich shodu. Poté se podíváme na efektivnější algoritmy založené na převodu čísla na řádek nebo použití zpětného pořadí číslic.

Na konci průvodce také poskytneme kompletní programový kód, který všechny tyto přístupy integruje a poskytuje univerzální metodu kontroly čísla na palindromitu. Díky této příručce budete moci snadno řešit úkoly související s palindromy čísel v jazyce Python a aplikovat získané znalosti na své projekty.

Jak zjistím, zda je číslo palindrom v Pythonu?

Krok 1: převést číslo na řádek pomocí funkce str(). Například:

number = 12321 number_str = str(number)

Krok 2: Zkontrolujte, zda je řetězec palindrom. To lze provést porovnáním řádku se zpětným řádkem pomocí příkazu řezu [::-1]. Pokud jsou oba řádky stejné, pak je číslo palindrom. Například:

if number_str == number_str[::-1]: print ("číslo je palindrom") else: print ("číslo není palindrom")

Tímto způsobem můžete určit, zda je číslo palindrom v Pythonu převodem čísla na řádek a jeho porovnáním se zpětným řádkem.

Poznámka:

Například číslo "Madam, in Eden, I' m Adam " je palindrom, pokud odstraníte všechna interpunkční znaménka a přivedete je do spodního registru. Buďte opatrní a dodržujte požadavky úkolu pro co nejpřesnější výsledek.

Co je palindrom?

Palindrom se nazývá slovo, fráze, číslo nebo sekvence znaků, která se čte stejně tam a zpět. To znamená, že pořadí znaků je zachováno bez ohledu na směr čtení.

Například slova "šaláš" a "kozák" jsou palindromy, protože se čtou stejně zleva doprava a zprava doleva. Palindrom může být delší, například "a růže spadla na Azorovu tlapu".

Kromě toho mohou být palindromy čísla jako 121 nebo 12321, protože při čtení zprava doleva nebo zleva doprava zůstávají stejná.

Palindromická slovaNe palindromická slova
salašmáma
kozákpapež
argumentsyn

Jak zjistím, zda je číslo palindrom v Pythonu?

Jedním ze způsobů je převést číslo na řádek a zkontrolovat, zda je řetězec palindrom. K tomu můžete použít řezy řádků k vytvoření zpětné kopie původního řádku. Poté porovnáme původní řádek se zpětným a výsledek vrátíme.

Příklad kódu:
x = 12321
num_str = str(x)
if num_str == num_str[::-1]:
print ("číslo je palindrom")
else:
print ("číslo není palindrom")

Dalším způsobem je pomocí cyklu a aritmetických operací zkontrolovat, zda je číslo palindrom. Za tímto účelem vydělíme číslo jednotlivými číslicemi a vytvoříme obrácené číslo sčítáním číslic s ohledem na vybitost.

Příklad kódu:
x = 12321
num = x
reverse = 0
while num > 0:
digit = num % 10
reverse = reverse * 10 + digit
num = num // 10
if x == reverse:
print ("číslo je palindrom")
else:
print ("číslo není palindrom")

Ať už zvolíte kteroukoli metodu, ověřte palindromitu pouze pozitivními čísly. U záporných čísel nelze určit palindromitu.