एक स्ट्रिंग से स्वर प्राप्त करने के लिए, हमें स्ट्रिंग के प्रत्येक वर्ण के माध्यम से पुनरावृति करनी होगी। यहां हमें स्ट्रिंग के माध्यम से जाने के लिए पॉइंटर्स का उपयोग करना होगा। इसके लिए हमें सी स्टाइल स्ट्रिंग्स की जरूरत है। यदि स्ट्रिंग को str द्वारा इंगित किया जाता है, तो *str शुरुआत में पहला वर्ण धारण करेगा। फिर यदि str बढ़ा दिया जाता है, तो *str अगले वर्ण को इंगित करेगा और इसी तरह। यदि वर्ण [ए, ई, आई, ओ, यू] या [ए, ई, आई, ओ, यू] में है तो यह स्वर है। इसलिए हम गिनती बढ़ाएंगे
एल्गोरिदम
गिनतीस्वर(str)
begin count := 0 for each character ch in str, do if ch is in [a,e,i,o,u] or [A, E, I, O, U], then count := count + 1 end if done return count end
उदाहरण
#include<iostream> using namespace std; int countVowels(const char *myStr){ int count = 0; while((*myStr) != '\0'){ if(*myStr == 'a' || *myStr == 'e' || *myStr == 'i' || *myStr == 'o' || *myStr == 'u' || *myStr == 'A' || *myStr == 'E' || *myStr == 'I' || *myStr == 'O' || *myStr == 'U') { count++; } myStr++; } return count; } main() { string myStr; cout << "Enter String: "; cin >> myStr; cout << "Number of Vowels: " << countVowels(myStr.c_str()); }
आउटपुट
Enter String: EDucation Number of Vowels: 5