How to recursively check if a number is palindrome in TypeScript

2 Answers

0 votes
function recursivelyCheckPalindrome(n: number): boolean {
    // Recursive function to calculate the reverse of the number
    function reverseNumber(n: number, temp: number): number {
        if (n === 0) {
            return temp;
        }

        return reverseNumber(Math.floor(n / 10), temp * 10 + (n % 10));
    }

    if (n < 0) {
        return false;
    }
    
    const reversed = reverseNumber(n, 0);

    return n === reversed;
}

const number = 12321;

console.log(recursivelyCheckPalindrome(number));




/*
run:
  
true 
           
*/

 



answered Oct 17, 2024 by avibootz
0 votes
function recursivelyCheckPalindrome(n: number, original: number): boolean {
    if (n === 0) {
        const originalStr = Math.abs(original).toString();
        return originalStr === originalStr.split('').reverse().join('');
    }

    return recursivelyCheckPalindrome(Math.floor(n / 10), original);
}

const n: number = 12321;

if (recursivelyCheckPalindrome(n, n)) {
    console.log("Palindrome");
} else {
    console.log("NOT Palindrome");
}
 


/*
run:
  
"Palindrome" 
           
*/

 



answered Oct 17, 2024 by avibootz

Related questions

1 answer 114 views
2 answers 126 views
2 answers 127 views
2 answers 125 views
...