niedziela, 30 marca 2014

Palindrom

Palindrom (tudzież anagram odwrotny) jest to wyraz, liczba, który odczytany zarówno normalnie (od przodu), jak i wspak (od tyłu) daje taki sam ciąg, np. palindromem jest wyraz "kajak", czy liczba 656. Ponadto ciąg składający się z mniej niż dwóch znaków jest palindromem (np. litera K).


Algorytm


 1. boolean is_palindrome(string S)
 2. begin
 3.    integer I ← (ilość znaków z S) div 2 // przyjmujemy S[0] = pierwsza litera S
 4.    while I > 0 do
 5.    begin
 6.        I ← I - 1
 7.        if S[I] != S[ilość znaków z S - I - 1] then return false
 8.    end
 9.    return true
10. end


3. Deklaracja zmiennej I i przypisanie do niej połowy długości ciągu (zaniedbując część ułamkową), przekazanego w parametrze funkcji.
7. Jeśli I-ty znak ciągu S jest różny od znaku na pozycji: ilość znaków z S - I - 1, zwróć false - ciąg nie jest palindromem.
9. Podczas działania pętli, nie została zwrócona wartość false, więc ciąg jest palindromem.




Brak komentarzy:

Prześlij komentarz