Chúng tôi được cung cấp một chuỗi có độ dài bất kỳ chứa cả chữ hoa và chữ thường và nhiệm vụ là tính số lượng các ký tự đó ở cùng một vị trí như trong bảng chữ cái tiếng Anh.
Ví dụ
Input − String str = eBGD Output − Count is: 2
Giải thích - B và D là các ký tự nằm cùng thứ tự trong bảng chữ cái tiếng Anh vì B đứng ở vị trí thứ hai và D ở vị trí thứ tư.
Input − String str = Abcdeizxy Output − Count is: 5
Giải thích - A, B, C, D và E là các ký tự nằm theo cùng một thứ tự trong bảng chữ cái tiếng Anh vì A đứng ở vị trí đầu tiên rồi đến B, C, D và E.
Phương pháp tiếp cận được sử dụng trong chương trình dưới đây như sau
-
Nhập chuỗi bao gồm chữ hoa và chữ thường.
-
Bắt đầu vòng lặp từ 0 đến kích thước của một chuỗi có thể được tính bằng cách sử dụng hàm size ().
-
Bây giờ, hãy kiểm tra xem ‘i =str [i] -‘ a ’OR i =str [i] -‘ a ’’ vì chuỗi của chúng ta chứa cả chữ hoa và chữ thường.
-
Bây giờ, hãy lấy một biến tạm thời, giả sử là tạm thời, khởi tạo nó bằng 0, bên ngoài vòng lặp và bắt đầu tăng nó với 1 bên trong vòng lặp
-
Trả lại giá trị trong thời gian tạm thời
-
In kết quả.
Ví dụ
#include<iostream>
using namespace std;
int countalphabet(string str){
int res= 0;
// Traverse the string
for (int i = 0 ; i < str.size(); i++){
// As all uppercase letters are grouped together
// and lowercase are grouped together so
// if the difference is equal then they are same
if (i == (str[i] - 'a') || i == (str[i] - 'A')){
res++;
}
}
return res;
}
// main function
int main(){
string str = "aBTutorIalspOiNT";
cout <<”Count is:”<< countalphabet(str);
return 0;
} Đầu ra
Nếu chúng ta chạy đoạn mã trên, nó sẽ tạo ra kết quả sau
Count is: 2