package main
import (
"fmt"
"strconv"
)
func recursivelyCheckPalindrome(n, original int) bool {
if n == 0 {
return strconv.Itoa(original) == reverseString(strconv.Itoa(original))
}
return recursivelyCheckPalindrome(n / 10, original)
}
func reverseString(s string) string {
runes := []rune(s)
for i, j := 0, len(runes) - 1; i < j; i, j = i + 1, j - 1 {
runes[i], runes[j] = runes[j], runes[i]
}
return string(runes)
}
func main() {
n := 12321
if recursivelyCheckPalindrome(n, n) {
fmt.Println("Palindrome")
} else {
fmt.Println("NOT Palindrome")
}
}
/*
run:
Palindrome
*/