Half of the code is done. It's shown below, please follow as its starting and provide a simplicity code.
Palindrome Tester (C++)
Implement a function to recursively determine if a word is a palindrome. A palindrome is a word, phrase, number, or other sequence of symbols or elements, whose meaning may be interpreted the same way in either forward or reverse direction. Famous examples include "Able was I ere I saw Elba", "A man, a plan, a canal: Panama".
Important questions to ask yourself:
- What is the base case?
- What is the recursive case?
The substr method of the string class will be useful. It takes the starting position of the first character to be copied as a substring and the number of characters to include in the substring.
Also useful is the length method. It returns the length of the string in question.
Examples:
string s = "defiant";
cout << s.substr(2, s.length()-4) << endl;
The above example prints out: fia
Here is some code to get you started. Submit your modified palindrome function. Do not modify the main function. When testing your function don't forget to type the word on the command line after "a.out": ./a.out radar
Starting...
#include
#include
using std::cout;
using std::endl;
using std::string;
bool palindrome(string);
int main(int argc, char *argv[]) {
string s = argc == 2 ? argv[1] : "redivider";
if (palindrome(s)) {
cout << "\"" << s << "\" is a palindrome." << endl;
}
else {
cout << "\"" << s << "\" is not a palindrome." << endl;
}
return 0;
}
bool palindrome(string w) {
// your code goes here
return false;
}