A palindrome is a string that reads the same forwards or backwards; for example dad, mom, deed (i.e., reversing a palindrome produces the same string). Write a recursive, bool-valued function, isPalindrome that accepts a string and returns whether the string is a palindrome. A string, s, is a palindrome if: – s is the empty string or s consists of a single letter (which reads the same back or forward), or – the first and last characters of s are the same, and the rest of the string (i.e., the second through next-to-last characters) form a palindrome.

LANGUAGE: C++

CHALLENGE:

A palindrome is a string that reads the same forwards or backwards; for example dad, mom, deed (i.e., reversing a palindrome produces the same string). Write a recursive, bool-valued function, isPalindrome that accepts a string and returns whether the string is a palindrome.
A string, s, is a palindrome if:- s is the empty string or s consists of a single letter (which reads the same back or forward), or- the first and last characters of s are the same, and the rest of the string (i.e., the second through next-to-last characters) form a palindrome.

SOLUTION:



bool isPalindrome(string word){
    if(word.length() < 2) {
        return true;
    }else if(word[0] == word[word.length() - 1]){
        return isPalindrome(word.substr(1, word.length() - 2));
    }
    return false;
}