Count palindrome words in a sentence - GeeksforGeeks

28 May, 2021
Given a string str and the task is to count palindrome words present in the string str.Examples:  
Input : Madam Arora teaches malayalam
Output : 3
The string contains three palindrome words (i.e.,
Madam, Arora, malayalam) so the count is three.

Input : Nitin speaks malayalam
Output : 2
The string contains two palindrome words (i.e.,
Nitin, malayalam) so the count is two.
 
countPalin() function counts the number of palindrome words by extracting every word of the string and passing it to checkPalin() function. An extra space is added in the original string to extract last word. checkPalin() function check the word palindrome. It returns 1 if word is palindrome else returns 0. It makes sure that empty strings are not counted as palindrome as the user may enter more than one spaces in between or at the beginning of the string.  
C++
Java
Python3
C#
Javascript
/*C++ program to count number of palindromewords in a sentence*/#include <bits/stdc++.h>using namespace std; // Function to check if a word is// palindromebool checkPalin(string word){    int n = word.length();    transform(word.begin(), word.end(), word.begin(), ::tolower);     for (int i = 0; i < n; i++,n--)    if (word.at(i) != word.at(n - 1))        return false;        return true;} // Function to count palindrome wordsint countPalin(string str){            // to check last word for palindrome    str = str + " ";         // to store each word    string word = "";    int count = 0;    for (int i = 0; i < str.length(); i++)    {        char ch = str.at(i);                 // extracting each word        if (ch != ' ')            word = word + ch;        else {            if (checkPalin(word))                count++;            word = "";        }    }         return count;}     // Driver codeint main(){         cout<<countPalin("Madam Arora teaches malayalam")<<endl;                     cout<<countPalin("Nitin speaks malayalam")<<endl;} // This code is contributed by nidhi16bcs2007
/*Java program to count number of palindromewords in a sentence*/class GFG {         // Function to check if a word is    // palindrome    static boolean checkPalin(String word)    {        int n = word.length();        word = word.toLowerCase();        for (int i=0; i<n; i++,n--)           if (word.charAt(i) != word.charAt(n - 1))              return false;              return true;    }         // Function to count palindrome words    static int countPalin(String str)    {               // to check last word for palindrome        str = str + " ";                 // to store each word        String word = "";        int count = 0;        for (int i = 0; i < str.length(); i++)        {            char ch = str.charAt(i);                         // extracting each word            if (ch != ' ')                word = word + ch;            else {                if (checkPalin(word))                    count++;                word = "";            }        }                 return count;    }         // Driver code    public static void main(String args[])    {        System.out.println(countPalin("Madam "                  + "Arora teaches malayalam"));                           System.out.println(countPalin("Nitin "                        + "speaks malayalam"));    }}
# Python3 program to count number of# palindrome words in a sentence # Function to check if a word is palindromedef checkPalin(word):    if word.lower() == word.lower()[::-1]:        return True # Function to count palindrome wordsdef countPalin(str):    count = 0         # splitting each word as spaces as    # delimiter and storing it into a list    listOfWords = str.split(" ")     # Iterating every element from list    # and checking if it is a palindrome.    for elements in listOfWords:        if (checkPalin(elements)):                         # if the word is a palindrome            # increment the count.            count += 1    print (count) # Driver codecountPalin("Madam Arora teaches malayalam")countPalin("Nitin speaks malayalam") # This code is contributed# by Ronit Shrivastava.
// C# program to count number of// palindrome words in a sentenceusing System; class GFG{ // Function to check if a word is// palindromepublic static bool checkPalin(string word){    int n = word.Length;    word = word.ToLower();    for (int i = 0; i < n; i++,n--)    {    if (word[i] != word[n - 1])    {        return false;    }    }    return true;} // Function to count palindrome wordspublic static int countPalin(string str){    // to check last word for palindrome    str = str + " ";     // to store each word    string word = "";    int count = 0;    for (int i = 0; i < str.Length; i++)    {        char ch = str[i];         // extracting each word        if (ch != ' ')        {            word = word + ch;        }        else        {            if (checkPalin(word))            {                count++;            }            word = "";        }    }     return count;} // Driver codepublic static void Main(string[] args){    Console.WriteLine(countPalin("Madam " +               "Arora teaches malayalam"));     Console.WriteLine(countPalin("Nitin " +                      "speaks malayalam"));}} // This code is contributed by Shrikant13
<script> /*Javascript program to count number of palindromewords in a sentence*/ // Function to check if a word is// palindromefunction checkPalin(word){    var n = word.length    word = word.toLowerCase();     for (var i = 0; i < n; i++,n--)    if (word[i] != word[n - 1])        return false;        return true;} // Function to count palindrome wordsfunction countPalin( str){            // to check last word for palindrome    str = str + " ";         // to store each word    var word = "";    var count = 0;    for (var i = 0; i < str.length; i++)    {        var ch = str[i];                 // extracting each word        if (ch != ' ')            word = word + ch;        else {            if (checkPalin(word))                count++;            word = "";        }    }         return count;}     // Driver codedocument.write( countPalin("Madam Arora teaches malayalam") + "<br>");             document.write( countPalin("Nitin speaks malayalam")); // This code is contributed by itsok.</script>
3
2
 
https://youtu.be/z
-5HChTA0ME 
shrikanth13
Ronit_shrivastava
nidhiva
itsok
palindrome
Strings
Strings
palindrome
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
Comments
Old Comments
Python program to check if a string is palindrome or not
Different methods to reverse a string in C/C++
Check for Balanced Brackets in an expression (well-formedness) using Stack
Convert string to char array in C++
KMP Algorithm for Pattern Searching
Array of Strings in C++ (5 Different Ways to Create)
Caesar Cipher in Cryptography
Reverse words in a given string
Check whether two strings are anagram of each other
Length of the longest substring without repeating characters