Computer >> Máy Tính >  >> Lập trình >> C ++

C ++ Chương trình đếm số nguyên âm trong một chuỗi sử dụng Con trỏ?

Để lấy các nguyên âm từ một chuỗi, chúng ta phải lặp qua từng ký tự của chuỗi. Ở đây chúng ta phải sử dụng con trỏ để di chuyển qua chuỗi. Đối với điều này, chúng ta cần C kiểu chuỗi. Nếu chuỗi được trỏ bởi str, thì * str sẽ giữ ký tự đầu tiên ở đầu. Sau đó, nếu str được tăng lên, * str sẽ trỏ đến ký tự tiếp theo, v.v. Nếu ký tự nằm trong [a, e, i, o, u] hoặc [A, E, I, O, U] thì nó là nguyên âm. Vì vậy, chúng tôi sẽ tăng số lượng

Thuật toán

countVowels (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

Ví dụ

#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());
}

Đầu ra

Enter String: EDucation
Number of Vowels: 5