- 2 kwietnia 2026
- Posted by: Damian
- Category: Baza wiedzy

Na rozszerzonej maturze z informatyki często pojawiają się zadania dotyczące sprawdzenia czy konkretny napis jest palindromem. Warto więc dowiedzieć się czym właściwie jest palindrom, a także w jaki sposób można go sprawdzić w konkretnym języku programowania.
Kalkulator: palindromy – online
Wynik:
Palindrom – co to?
Palindromy to wyrazy czytane od tyłu dające w rezultacie ten sam wyraz. Wystarczy więc przeczytać od tyłu konkretny wyraz, żeby go sprawdzić. Istnieją również zdania palindromiczne, gdzie całe zdanie można przeczytać od tyłu i da to takie samo zdanie (nie bierze się w tym przypadku pod uwagę spacji).
Palindrom to słowo pochodzące z greki, dokładniej chodzi o palindromeo, które oznacza “biec z powrotem”.

Palindrom przykład
Co ciekawe, najdłuższym palindromem na świecie (który posiada sens) jest tzw. megapalindrom Tadeusza Morawskiego “Żartem w metraż”, ten wiersz ma aż 33 tysiące liter. Pod spodem znajdziesz przykłady palindromów, zarówno wyrazów jak i zdań:
- Anna,
- kajak,
- radar,
- potop,
- Kamil Ślimak,
- Żartem dano nadmetraż,
- Łoi nas anioł.
W przypadku matury z informatyki interesują nas jedynie wyrazy palindromiczne. Gdy słowo ma parzystą liczbę znaków, wystarczy sprawdzić pierwszy znak z ostatnim, drugi z przedostatnim itd. W przypadku nieparzystych słów, należy zrobić to samo, ale pominąć środkową literę, jej się po prostu nie porównuje.
Natomiast w przypadku zdań palindromicznych należy przede wszystkim usunąć wszelkie znaki interpunkcyjne, a następnie dokonać tej samej operacji, co w przypadku wyrazów palindromicznych.

Oczywiście istnieje również wiele wyrazów, które nie są palindromami. W ich przypadku, przebieg sprawdzania wygląda następująco:

Palindromy – pseudokod i schemat blokowy
Oczywiście sprawdzanie palindromów można również wykonać w ramach rozmaitych języków programowania. Pod spodem znajdziesz schemat blokowy z opisem algorytmu sprawdzania palindromów.

Czy wyraz jest palindromem – pseudokod
1 2 3 4 5 | funkcja czyPalindrom (napis) dla i = 1, 2 ... długość(napis) div 2 wykonuj jeżeli napis [i] != napis [długość(napis) - i + 1] zwróć fałsz zwróć prawda |
Opis jak sprawdzić palindrom – Pseudokod
- 1 linia – Deklaracja funkcji czyPalindrom przyjmującej argument napis.
- 2 linia – Pętla iterująca po indeksie i od 1 do długość(napis) div 2.
- 3 linia – Sprawdzenie warunku, czy znak napis[i] jest różny od napis[długość(napis) – i + 1].
- 4 linia – Zwrócenie fałszu, jeśli napotkano różne znaki.
- 5 linia – Zwrócenie prawdy, jeśli znaki były takie same.
Palindromy – Python, Java i C++
Palindromy – Python
1 2 3 4 5 6 7 8 | def czyPalindrom(napis): for i in range(len(napis) // 2): if napis[i] != napis[len(napis) - 1 - i]: return False return True testowy_napis = "kajak" wynik = czyPalindrom(testowy_napis) print(f'Czy "{testowy_napis}" jest palindromem? {wynik}') |
Dodatkowo dzięki dość dużym możliwościom pythona co do “onelinerów” można tę funkcję zapisać również tak:
1 2 | def czyPalindrom(napis): return napis == napis[::-1] |
[::-1] oznacza, że będziemy przechodzili po kolejnych znakach z krokiem -1, czyli po prostu uzyskamy odwrócony napis. Wystarczy porównać czy napisy są takie same i zwrócić wynik. Jeśli chcesz więcej takich sztuczek zajrzyj do naszego artykułu.
Palindromy – Java
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | public class PalindromChecker { public static void main(String[] args) { String testowyNapis = "kajak"; boolean wynik = czyPalindrom(testowyNapis); System.out.println("Czy \"" + testowyNapis + "\" jest palindromem? " + wynik); } public static boolean czyPalindrom(String napis) { for (int i = 0; i < napis.length() / 2; i++) { if (napis.charAt(i) != napis.charAt(napis.length() - 1 - i)) { return false; } } return true; } } |
Palindromy – C++
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | #include <iostream> #include <string> using namespace std; bool czyPalindrom(string napis) { for (int i = 0; i < napis.length() / 2; i++) { if (napis[i] != napis[napis.length() - 1 - i]) { return false; } } return true; } int main() { string testowyNapis = "kajak"; bool wynik = czyPalindrom(testowyNapis); cout << "Czy \"" << testowyNapis << "\" jest palindromem? " << (wynik ? "Tak" : "Nie") << endl; return 0; } |
- Napisz program sprawdzający czy wyraz jest palindromem, pamiętając, że wystarczy sprawdzić pierwszy znak z ostatnim, drugi z przedostatnim itd.
- Przerób program tak, żeby obsługiwał również zdania palindromiczne. Pamiętaj, że w tym celu wystarczy najpierw usunąć znaki interpunkcyjne oraz spacje z napisu.
QUIZ – Sprawdź swoją wiedzę
Najczęściej zadawane pytania o palindromy
Jak zbadać czy zdanie jest palindrom?
W tym celu należy porównać pierwszy znak z ostatnim, drugi z przedostatnim i działać w ten sposób przez cały wyraz. Jeśli znaki są te same, to znaczy, że wyraz jest palindromem. W przypadku gdy słowo ma nieparzystą liczbę znaków należy pominąć środkową literę.
Jeśli chcesz sprawdzić czy zdanie jest palindromem, należy usunąć wszelkie znaki interpunkcyjne, a następnie zastosować opisaną wcześniej zasadę.
Co to jest palindrom w informatyce?
To napis (string) lub tablica znaków (char), brzmiące tak samo czytane od tyłu i od przodu.
Jak brzmi najdłuższy palindrom?
Najdłuższym palindromem na świecie jest megapalindrom Tadeusza Morawskiego pod tytułem “Żartem w metraż”. Ten wiersz złożony jest z aż 33 tysięcy liter.


