
Code : Tout sélectionner
Procedure.l Palindrome(n.l)
Protected r.l, p.l, d.l, t.l
If n < 0
r = #False ;le "-" empeche d'avoir un palindrome
ElseIf n < 10
r = #True ;de 0 à 9 on a forcement un palindrome
Else
d = n % 10 ;dernier chiffre de n
p = n
t = 1
While p / 10 > 0 ;tant qu'il reste des chiffres a enlever
p / 10 ;retire les chiffres par la droite
t * 10 ;prepare l'exposant du chiffre a retirer
Wend
;n est peut-etre un palindrome
If p = d
n = (n - p*t) / 10 ;donc on retire les chiffres aux extremites
r = Palindrome(n) ;et on reteste
Else
r = #False
EndIf
EndIf
ProcedureReturn r
EndProcedure
Debug Palindrome(923456789)
Debug Palindrome(923454329)
