একটি স্ট্রিং দেওয়া থাকলে, সেটির সব ক্যারেক্টার ক্যাপিটাল লেটার (A-Z) কিনা যাচাই করতে হবে।
ইনপুট-১
str = "INDIA"
আউটপুট
True
ইনপুট-২
str = "Programmer"
আউটপুট
False
সমাধানের পদ্ধতি
- স্ট্রিং ইনপুট নিন।
checkCapital(string s)ফাংশন বুলিয়ান রিটার্ন করবে।- কাউন্টার ভেরিয়েবল দিয়ে কতগুলো ক্যারেক্টার 'A' থেকে 'Z' রেঞ্জে আছে সেটা গণনা করুন।
- যদি কাউন্টার == স্ট্রিং লেন্থ হয়, বা কাউন্টার == ০ (সব ছোট হাতের), বা কাউন্টার == ১ এবং প্রথম ক্যারেক্টার ক্যাপিটাল হয়, তবে
trueরিটার্ন করুন। - অন্যথায়
false।
উদাহরণ
#include <bits/stdc++.h>
using namespace std;
bool checkCapital(string s) {
int counter = 0, loc = -1;
for (int i = 0; i < s.size(); i++) {
if (s[i] >= 'A' && s[i] <= 'Z') {
counter++; loc = i;
}
}
if (counter == s.size() || counter == 0 || (counter == 1 && loc == 0))
return true;
return false;
}
int main() {
string str = "INDIA";
cout << (checkCapital(str) ? "True" : "False") << endl;
return 0;
}
আউটপুট
True