কম্পিউটার টিউটোরিয়াল

C++-এ ইংরেজি বর্ণমালার মতো একই পজিশনে থাকা অক্ষর গণনা

আমাদের একটি স্ট্রিং দেওয়া আছে যেকোনো দৈর্ঘ্যের যাতে বড় এবং ছোট হাতের অক্ষর রয়েছে, এবং আমাদের কাজ হল ইংরেজি বর্ণমালার মতো একই পজিশনে থাকা অক্ষরগুলির সংখ্যা গণনা করা।

উদাহরণ

ইনপুট − String str = eBGD আউটপুট − গণনা: 2

ব্যাখ্যা − B এবং D হল সেই অক্ষর যারা ইংরেজি বর্ণমালায় একই ক্রমে রয়েছে কারণ B দ্বিতীয় পজিশনে এবং D চতুর্থ পজিশনে থাকে।

ইনপুট − String str = Abcdeizxy আউটপুট − গণনা: 5

ব্যাখ্যা − A, B, C, D, E হল ইংরেজি বর্ণমালায় একই ক্রমে থাকা অক্ষর কারণ A প্রথম পজিশনে, তারপর B, C, D, E।

প্রোগ্রামে ব্যবহৃত পদ্ধতি

  • বড় এবং ছোট হাতের অক্ষর সহ স্ট্রিং ইনপুট নিন
  • i = 0 থেকে স্ট্রিং আকার পর্যন্ত লুপ শুরু করুন (size() ফাংশন দিয়ে)
  • এখন চেক করুন i == str[i] - 'a' অথবা i == str[i] - 'A' কারণ স্ট্রিংতে বড়-ছোট হাতের অক্ষর উভয়ই আছে
  • একটি অস্থায়ী ভেরিয়েবল temp নিন, 0 দিয়ে আরম্ভ করুন, লুপের বাইরে এবং লুপের ভিতরে 1 বৃদ্ধি করুন
  • temp-এর মান ফেরত দিন
  • ফলাফল প্রিন্ট করুন

উদাহরণ কোড

#include <iostream>
using namespace std;

int countalphabet(string str) {
    int res = 0;
    // স্ট্রিং ট্রাভার্স করুন
    for (int i = 0; i < str.size(); i++) {
        // যেহেতু সব বড় হাতের অক্ষর একসাথে এবং ছোট হাতের একসাথে
        // তাই যদি পার্থক্য সমান হয় তবে একই পজিশন
        if (i == (str[i] - 'a') || i == (str[i] - 'A')) {
            res++;
        }
    }
    return res;
}

// main ফাংশন
int main() {
    string str = "aBTutorIalspOiNT";
    cout << "Count is: " << countalphabet(str);
    return 0;
}

আউটপুট

যদি আমরা উপরের কোডটি রান করি তবে নিচের আউটপুট পাব

Count is: 2
  1. C++-এ getline (string) ফাংশন

  2. স্ট্রিং রিভার্স (ইটেরেটিভ) C++

  3. স্ট্রিং থেকে অ্যালফাবেট বাদ দিয়ে সব ক্যারেক্টার মুছে ফেলার C++ প্রোগ্রাম

  4. C#-এ স্ট্রিংয়ের ক্যারেক্টার সোয়াপ করা (LINQ Select)