Answer to Question #183009 in C++ for Vincenzo Santoro

Question #183009

Write a program that uses the function isPalindrome. Test your program on the following strings:

madam, abba, 22, 67876, 444244, trymeuemyrt

Modify the function isPalindrome of Example 6-6 so that when determining whether a string is a palindrome, cases are ignored, that is, uppercase and lowercase letters are considered the same.

The isPalindrome function from Example 6-6 has been included below for your convenience.

bool isPalindrome(string str) 
{
int length = str.length(); 
for (int i = 0; i < length / 2; i++) {
    if (str[i] != str[length – 1 – i]) {
         return false;
    } // if    
  } // for loop
 return true;
}// isPalindrome




1
Expert's answer
2021-04-26T16:31:59-0400
#include <iostream>
#include <string>
#include <cctype>
using namespace std;

bool isPalindrome(string str) 
{
int length = str.length(); 
for (int i = 0; i < length / 2; i++) {
    if (toupper(str[i]) != toupper(str[length - 1 - i])) {
        return false;
    } // if    
  } // for loop
 return true;
}// isPalindrome

int main()
{
    string aStr[] = {"Madam",
                     "ABBA", 
                     "22",
                     "67876",
                     "444244", 
                     "trymeuemyrt"};
    
    for (int i=0; i<sizeof(aStr)/sizeof(aStr[0]); i++) {
        cout << "The string \"" << aStr[i];
        if (isPalindrome(aStr[i])) {
            cout << "\" is";
        }
        else {
            cout << "\" isn\'t";
        }
        cout << " a palindrome." << endl;
    }
}

Need a fast expert's response?

Submit order

and get a quick answer at the best price

for any assignment or question with DETAILED EXPLANATIONS!

Comments

No comments. Be the first!

Leave a comment

LATEST TUTORIALS
New on Blog
APPROVED BY CLIENTS