Trong hướng dẫn này, chúng ta sẽ học cách tìm ký tự hoa đầu tiên trong chuỗi đã cho. Hãy xem một ví dụ.
Đầu vào −Điểm hướng dẫn
Đầu ra −T
Hãy xem các bước để giải quyết vấn đề bằng phương pháp lặp lại.
-
Khởi tạo chuỗi.
-
Lặp lại chuỗi.
-
Kiểm tra xem ký tự hiện tại có phải là chữ hoa hay không bằng cách sử dụng isupper phương pháp.
-
Nếu ký tự là chữ hoa thì trả về ký tự hiện tại.
Ví dụ
Hãy xem mã.
#include <bits/stdc++.h>
using namespace std;
char firstUpperCaseChar(string str) {
for (int i = 0; i < str.length(); i++)
if (isupper(str[i])) {
return str[i];
}
return 0;
}
int main() {
string str = "Tutorialspoint";
char result = firstUpperCaseChar(str);
if (result == 0) {
cout << "No uppercase letter" << endl;
}
else {
cout << result << endl;
}
return 0;
} Đầu ra
Nếu bạn chạy đoạn mã trên, thì bạn sẽ nhận được kết quả sau.
T
Hãy xem các bước để giải quyết vấn đề bằng phương pháp đệ quy.
-
Khởi tạo chuỗi.
-
Viết một hàm đệ quy chấp nhận hai chuỗi tham số và chỉ mục.
-
Nếu ký tự hiện tại ở cuối chuỗi thì trả về.
-
Nếu ký tự hiện tại là chữ hoa thì trả về ký tự hiện tại.
Ví dụ
Hãy xem mã.
#include <bits/stdc++.h>
using namespace std;
char firstUpperCaseChar(string str, int i = 0) {
if (str[i] == '\0') {
return 0;
}
if (isupper(str[i])) {
return str[i];
}
return firstUpperCaseChar(str, i + 1);
}
int main() {
string str = "Tutorialspoint";
char result = firstUpperCaseChar(str);
if (result == 0) {
cout << "No uppercase letter";
}
else {
cout << result << endl;
}
return 0;
} Đầu ra
Nếu bạn chạy đoạn mã trên, thì bạn sẽ nhận được kết quả sau.
T
Kết luận
Nếu bạn có bất kỳ câu hỏi nào trong hướng dẫn, hãy đề cập đến chúng trong phần bình luận.