Różnice
Różnice między wybraną wersją a wersją aktualną.
|
|
pl:prolog:pllib:palindrome [2019/06/27 15:50] |
pl:prolog:pllib:palindrome [2019/06/27 15:50] (aktualna) |
| ====== Palindrome ====== |
| {{tag>lists}} |
| ===== Description ===== |
| A program accepting palindromes |
| |
| **Source**: The Art of Prolog |
| ===== Download ===== |
| Program source code: {{palindrome.pl}} |
| ===== Listing ===== |
| <code prolog> |
| /* |
| palindrome(Xs) :- |
| The string represented by the list Xs is a palindrome. |
| */ |
| |
| palindrome(Xs) :- palindrome(Xs,push,[]). |
| |
| palindrome([X|Xs],push,S) :- palindrome(Xs,push,[X|S]). |
| palindrome([X|Xs],push,S) :- palindrome(Xs,pop,[X|S]). |
| palindrome([X|Xs],push,S) :- palindrome(Xs,pop,S). |
| palindrome([X|Xs],pop,[X|S]) :- palindrome(Xs,pop,S). |
| palindrome([],pop,[]). |
| |
| % Program 18.1 : A program accepting palindromes |
| </code> |
| ===== Comments ===== |
| |