我正在尝试编写一个函数来确定一个单词是否是回文。我做了这个,但它总是返回“不是回文”。我不知道发生了什么。
(defun palindromo (X)
(setq i 0)
(setq j (- (length X) 1))
(setq bandera 0)
(loop while (< j i)
do
(when (char= (char X i) (char X j))
(+ i 1)
(- j 1)
(setq bandera 1))
(unless (char/= (char X i) (char X j))
(setq bandera 0)
)
)
(cond
((equal 0 bandera) (write "Is not a palindrome"))
((equal 1 bandera) (write "Is a palindrome"))
)
)
Run Code Online (Sandbox Code Playgroud)
我怎样才能解决这个问题?