Consulter la liste des primitives p.155 afin de comprendre le rôle des primitives mot, dernier, et
saufdernier.
Voici une procédure récursive qui permet d’inverser l’ordre des lettres d’un mot
pour inversem :m si vide? :m [retourne "] retourne mot dernier :m inversem saufdernier :m fin ecris inversem "abcde edcba |
On dit qu’un mot est un palindrome si on peut le lire dans les deux sens (exemples : radar, laval ...).
# teste si le mot :m est un palindrome pour palindrome :m si :m=inversem :m [retourne vrai] [retourne faux] fin |
Et enfin ce joli petit programme (Merci Olivier SC) :
pour palin :n si palindrome :n [ecris :n stop] ecris (liste :n "PLUS inversem :n "EGAL somme :n inversem :n) palin :n + inversem :n fin palin 78 78 PLUS 87 EGAL 165 165 PLUS 561 EGAL 726 726 PLUS 627 EGAL 1353 1353 PLUS 3531 EGAL 4884 4884 |