Dada una string, cuenta el número total de vocales (a, e, i, o, u) en ella. Hay dos métodos para contar el número total de vocales en una string.
- Iterativo
- recursivo
Ejemplos:
Input : abc de Output : 2 Input : geeksforgeeks portal Output : 7
1. Método iterativo:
A continuación se muestra la implementación:
C++
// C++ program to count vowels in a string #include<iostream> using namespace std; // Function to check the Vowel bool isVowel(char ch) { ch = toupper(ch); return (ch=='A' || ch=='E' || ch=='I' || ch=='O' || ch=='U'); } // Returns count of vowels in str int countVowels(string str) { int count = 0; for (int i=0; i<str.length(); i++) if (isVowel(str[i])) // Check for vowel ++count; return count; } // Main Calling Function int main() { //string object string str = "abc de"; // Total numbers of Vowel cout << countVowels(str) << endl; return 0; }
Java
// Java program to count vowels in a string public class GFG { // Function to check the Vowel static boolean isVowel(char ch) { ch = Character.toUpperCase(ch); return (ch=='A' || ch=='E' || ch=='I' || ch=='O' || ch=='U'); } // Returns count of vowels in str static int countVowels(String str) { int count = 0; for (int i = 0; i < str.length(); i++) if (isVowel(str.charAt(i))) // Check for vowel ++count; return count; } // Driver code public static void main(String args[]) { //string object String str = "abc de"; // Total numbers of Vowel System.out.println(countVowels(str)); } } // This code is contributed by Sumit Ghosh
Python3
# Python3 program to count vowels # in a string # Function to check the Vowel def isVowel(ch): return ch.upper() in ['A', 'E', 'I', 'O', 'U'] # Returns count of vowels in str def countVowels(str): count = 0 for i in range(len(str)): # Check for vowel if isVowel(str[i]): count += 1 return count # Driver Code # string object str = 'abc de' # Total number of Vowels print(countVowels(str)) # This code is contributed # by SamyuktaSHegde
C#
// C# program to count vowels in a string using System; class GFG { // Function to check the Vowel public static bool isVowel(char ch) { ch = char.ToUpper(ch); return (ch == 'A' || ch == 'E' || ch == 'I' || ch == 'O' || ch == 'U'); } // Returns count of vowels in str public static int countVowels(string str) { int count = 0; for (int i = 0; i < str.Length; i++) { // Check for vowel if (isVowel(str[i])) { ++count; } } return count; } // Driver code public static void Main(string[] args) { //string object string str = "abc de"; // Total numbers of Vowel Console.WriteLine(countVowels(str)); } } // This code is contributed by Shrikant13
PHP
<?php // PHP program to count vowels in a string // Function to check the Vowel function isVowel($ch) { $ch = strtoupper($ch); return ($ch =='A' || $ch =='E' || $ch =='I' || $ch =='O' || $ch =='U'); } // Returns count of vowels in str function countVowels($str) { $count = 0; for ($i = 0; $i < strlen($str); $i++) if (isVowel($str[$i])) // Check for vowel ++$count; return $count; } // Driver Code //string object $str = "abc de"; // Total numbers of Vowel echo countVowels($str) . "\n"; // This code is contributed // by Akanksha Rai ?>
Javascript
<script> // JavaScript program to count vowels in a string // Function to check the Vowel function isVowel(ch) { ch = ch.toUpperCase(); return ch == "A" || ch == "E" || ch == "I" || ch == "O" || ch == "U"; } // Returns count of vowels in str function countVowels(str) { var count = 0; for (var i = 0; i < str.length; i++) if (isVowel(str[i])) // Check for vowel ++count; return count; } // Main Calling Function // string object var str = "abc de"; // Total numbers of Vowel document.write(countVowels(str)); document.write("<br>"); // This code is contributed by rdtank. </script>
2
Complejidad de tiempo: O(n), donde n es la longitud de la string
Espacio auxiliar: O(1)
2. Método recursivo:
A continuación se muestra la implementación:
C++
// Recursive C++ program to count the total // number of vowels using recursion #include<iostream> using namespace std; // Function to check the Vowel bool isVowel(char ch) { ch = toupper(ch); return (ch=='A' || ch=='E' || ch=='I' || ch=='O' || ch=='U'); } // to count total number of vowel from 0 to n int countVovels(string str, int n) { if (n == 1) return isVowel(str[n-1]); return countVovels(str, n-1) + isVowel(str[n-1]); } // Main Calling Function int main() { // string object string str = "abc de"; // Total numbers of Vowel cout << countVovels(str, str.length()) << endl; return 0; }
Java
// Recursive Java program to count the total // number of vowels using recursion public class GFG { // Function to check the Vowel static int isVowel(char ch) { ch = Character.toUpperCase(ch); if(ch=='A' || ch=='E' || ch=='I' || ch=='O' || ch=='U') return 1; else return 0; } // to count total number of vowel from 0 to n static int countVowels(String str, int n) { if (n == 1) return isVowel(str.charAt(n - 1)); return countVowels(str, n-1) + isVowel(str.charAt(n - 1)); } // Main Calling Function public static void main(String args[]) { //string object String str = "abc de"; // Total numbers of Vowel System.out.println(countVowels(str,str.length())); } } // This code is contributed by Sumit Ghosh
Python 3
# Recursive Python 3 program to count the # total number of vowels using recursion # Function to check the Vowel def isVowel(ch): return ch.upper() in ['A', 'E', 'I', 'O', 'U'] # to count total number of # vowel from 0 to n def countVovels(str, n): if (n == 1): return isVowel(str[n - 1]); return (countVovels(str, n - 1) + isVowel(str[n - 1])); # Driver Code # string object str = "abc de"; # Total numbers of Vowel print(countVovels(str, len(str))) # This code is contributed # by Akanksha Rai
C#
using System; // Recursive C# program to count the total // number of vowels using recursion public class GFG { // Function to check the Vowel public static int isVowel(char ch) { ch = char.ToUpper(ch); if (ch == 'A' || ch == 'E' || ch == 'I' || ch == 'O' || ch == 'U') { return 1; } else { return 0; } } // to count total number of vowel from 0 to n public static int countVowels(string str, int n) { if (n == 1) { return isVowel(str[n - 1]); } return countVowels(str, n - 1) + isVowel(str[n - 1]); } // Main Calling Function public static void Main(string[] args) { //string object string str = "abc de"; // Total numbers of Vowel Console.WriteLine(countVowels(str,str.Length)); } } // This code is contributed by Shrikant13
PHP
<?php // Recursive PHP program to count the total // number of vowels using recursion // Function to check the Vowel function isVowel($ch) { $ch = strtoupper($ch); return ($ch == 'A' || $ch == 'E' || $ch == 'I' || $ch == 'O' || $ch == 'U'); } // to count total number of // vowel from 0 to n function countVovels($str, $n) { if ($n == 1) return isVowel($str[$n - 1]); return countVovels($str, $n - 1) + isVowel($str[$n - 1]); } // Driver Code // string object $str = "abc de"; // Total numbers of Vowel echo countVovels($str, strlen($str)) . "\n"; // This code is contributed // by Akanksha Rai ?>
Javascript
<script> // Recursive JavaScript program to count the total // number of vowels using recursion // Function to check the Vowel function isVowel(ch) { ch = ch.toUpperCase(); return (ch=='A' || ch=='E' || ch=='I' || ch=='O' || ch=='U'); } // to count total number of vowel from 0 to n function countVovels(str,n) { if (n == 1) return isVowel(str[n-1]); return countVovels(str, n-1) + isVowel(str[n-1]); } // Main Calling Function // string object let str = "abc de"; // Total numbers of Vowel document.write(countVovels(str, str.length)); // This code is contributed by shinjanpatra </script>
2
Complejidad de tiempo: O(n), donde n es la longitud de la string
Espacio auxiliar: O(n), donde n es la longitud de la string ya que la función se llama a sí misma n veces.
Cómo funciona el código recursivo.
Este artículo es una contribución de Prakhar Agrawal . Si te gusta GeeksforGeeks y te gustaría contribuir, también puedes escribir un artículo usando write.geeksforgeeks.org o enviar tu artículo por correo a review-team@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA