Dada una string str y la tarea es contar las palabras palíndromo presentes en la string str .
Ejemplos:
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.
La función countPalin() cuenta el número de palabras del palíndromo extrayendo cada palabra de la string y pasándola a la función checkPalin() . Se agrega un espacio adicional en la string original para extraer la última palabra.
La función checkPalin() comprueba la palabra palíndromo. Devuelve 1 si la palabra es palíndromo; de lo contrario, devuelve 0. Se asegura de que las strings vacías no se cuenten como palíndromo, ya que el usuario puede ingresar más de un espacio entre o al principio de la string.
C++
/*C++ program to count number of palindrome words in a sentence*/ #include <bits/stdc++.h> using namespace std; // Function to check if a word is // palindrome bool 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 words 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.at(i); // extracting each word if (ch != ' ') word = word + ch; else { if (checkPalin(word)) count++; word = ""; } } return count; } // Driver code int main() { cout<<countPalin("Madam Arora teaches malayalam")<<endl; cout<<countPalin("Nitin speaks malayalam")<<endl; } // This code is contributed by nidhi16bcs2007
Java
/*Java program to count number of palindrome words 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
# Python3 program to count number of # palindrome words in a sentence # Function to check if a word is palindrome def checkPalin(word): if word.lower() == word.lower()[::-1]: return True # Function to count palindrome words def 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 code countPalin("Madam Arora teaches malayalam") countPalin("Nitin speaks malayalam") # This code is contributed # by Ronit Shrivastava.
C#
// C# program to count number of // palindrome words in a sentence using System; class GFG { // Function to check if a word is // palindrome public 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 words public 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 code public static void Main(string[] args) { Console.WriteLine(countPalin("Madam " + "Arora teaches malayalam")); Console.WriteLine(countPalin("Nitin " + "speaks malayalam")); } } // This code is contributed by Shrikant13
Javascript
<script> /*Javascript program to count number of palindrome words in a sentence*/ // Function to check if a word is // palindrome function 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 words function 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 code document.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
Publicación traducida automáticamente
Artículo escrito por AnmolAgarwal y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA