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

C++-এ অ্যারেতে দুটি দেওয়া উপাদানের মধ্যস্থ উপাদান গণনা

আমাদের একটি পূর্ণসংখ্যা অ্যারে এবং দুটি সংখ্যা start এবং end দেওয়া আছে, এবং আমাদের কাজ হল অ্যারেতে start এবং end-এর মধ্যস্থ উপাদানগুলির সংখ্যা গণনা করা।

যদি start উপাদান একাধিকবার থাকে তবে আমরা প্রথম ঘটনাটি বিবেচনা করব এবং যদি end উপাদান একাধিকবার থাকে তবে আমরা শেষ ঘটনাটি বিবেচনা করব।

উদাহরণ

ইনপুট − int arr[] = {1, 2, 3, 4, 5, 6, 7}       Start = 1 and End = 7 আউটপুট − গণনা 5

ব্যাখ্যা − দেওয়া অ্যারেতে 7টি উপাদান রয়েছে এবং রেঞ্জ 1-7। এই রেঞ্জের মধ্যস্থ মোট 5টি উপাদান রয়েছে।

ইনপুট − int arr[] = {1, 2, 3, 4, 5, 6, 7}       Start = 7 and End = 9 আউটপুট − গণনা 0

ব্যাখ্যা − দেওয়া অ্যারেতে 7টি উপাদান রয়েছে এবং রেঞ্জ 7-9। এই রেঞ্জের মধ্যস্থ কোনো উপাদান নেই, তাই গণনা 0।

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

  • ইনপুট অ্যারে নিন, যেমন int arr[]
  • length() ফাংশন দিয়ে অ্যারের দৈর্ঘ্য গণনা করুন
  • i = 0 থেকে i < size পর্যন্ত লুপ শুরু করুন
  • লুপের ভিতরে, যদি arr[i] == start হয় তবে break করুন
  • যদি i > size-1 হয় তবে ফেরত দিন
  • j = size-1 থেকে j >= i+1 এবং j-- দিয়ে আরেকটি লুপ শুরু করুন
  • যদি arr[j] == end হয় তবে break করুন
  • যদি j == i হয় তবে 0 ফেরত দিন
  • j - i - 1 ফেরত দিন
  • ফলাফল প্রিন্ট করুন

উদাহরণ কোড

#include <iostream>
using namespace std;

// দুটি উপাদানের মধ্যস্থ সংখ্যা গণনা করার ফাংশন
int countelements(int ar[], int n, int start, int end) {
    // start খুঁজুন
    int i = 0;
    for (i = 0; i < n; i++) {
        if (ar[i] == start) {
            break;
        }
    }
    
    // যদি start না থাকে বা শেষে থাকে
    if (i >= n - 1) {
        return 0;
    }
    
    // end খুঁজুন
    int j;
    for (j = n - 1; j >= i + 1; j--) {
        if (ar[j] == end) {
            break;
        }
    }
    
    // যদি end না থাকে
    if (j == i) {
        return 0;
    }
    
    // দুটি উপাদানের মধ্যস্থ উপাদানগুলির সংখ্যা
    return (j - i - 1);
}

// Main ফাংশন
int main() {
    int ar[] = { 1, 6, 2, 5, 9, 8, 3, 7, 4 };
    int n = sizeof(ar) / sizeof(ar[0]);
    int start = 5, end = 4;
    cout << "count is " << countelements(ar, n, start, end);
    return 0;
}

আউটপুট

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

count is 4
  1. C++-এ অ্যারেতে স্বতন্ত্র উপাদান গণনা

  2. C++-এ অ্যারেতে কম্পোজিট উপাদান গণনা ও যোগফল

  3. C++-এ অ্যারেতে জোড় ও বিজোড় উপাদান গণনা (Count Even and Odd Elements in Array)

  4. C++-এ দেওয়া সংখ্যা পর্যন্ত অ্যারে উপাদান সর্বাধিক করা