এই টিউটোরিয়ালে আমরা শিখব কিভাবে একটি দেওয়া স্ট্রিং-এ প্রথম বড় হাতের (uppercase) অক্ষর খুঁজে বের করতে হয়। একটি উদাহরণ দেখি:
ইনপুট − Tutorialspoint
আউটপুট − T
ইটারেটিভ পদ্ধতি
ইটারেটিভ পদ্ধতিতে সমস্যা সমাধানের ধাপসমূহ:
স্ট্রিংটি ইনিশিয়ালাইজ করুন।
স্ট্রিংয়ের ওপর ইটারেট করুন।
isupper মেথড ব্যবহার করে বর্তমান ক্যারেক্টার বড় হাতের কিনা তা পরীক্ষা করুন।
যদি ক্যারেক্টারটি বড় হাতের হয়, তবে বর্তমান ক্যারেক্টারটি রিটার্ন করুন।
উদাহরণ
নিচে কোডটি দেওয়া হলো:
#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;
}
আউটপুট
উপরের কোডটি রান করলে নিচের ফলাফলটি পাওয়া যাবে:
T
রিকারসিভ পদ্ধতি
রিকারসিভ পদ্ধতিতে সমস্যা সমাধানের ধাপসমূহ:
স্ট্রিংটি ইনিশিয়ালাইজ করুন।
দুই প্যারামিটার (স্ট্রিং এবং ইন্ডেক্স) গ্রহণকারী একটি রিকারসিভ ফাংশন লিখুন।
যদি বর্তমান ক্যারেক্টার স্ট্রিংয়ের শেষ হয়, তবে রিটার্ন করুন।
যদি বর্তমান ক্যারেক্টার বড় হাতের হয়, তবে বর্তমান ক্যারেক্টারটি রিটার্ন করুন।
উদাহরণ
নিচে কোডটি দেওয়া হলো:
#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;
}
আউটপুট
উপরের কোডটি রান করলে নিচের ফলাফলটি পাওয়া যাবে:
T
নিষ্কর্ষ
এই টিউটোরিয়াল সম্পর্কে আপনার কোনো প্রশ্ন থাকলে কমেন্ট সেকশনে জানাতে পারেন।