কম্পিউটার

একটি অ্যারে (C++) এ জোড় এবং বিজোড় সূচীকৃত উপাদানের পরম পার্থক্য?


এখানে আমরা দেখব কিভাবে আমরা একটি অ্যারের মধ্যে বিজোড় এবং জোড় সূচীকৃত উপাদানগুলির সম্পূর্ণ পার্থক্য পেতে পারি। পরম পার্থক্য নির্দেশ করে যে এক জোড়ার পার্থক্য ঋণাত্মক হলে, পরম মান নেওয়া হবে। একটি উদাহরণের জন্য, সংখ্যাগুলি হল {1, 2, 3, 4, 5, 6, 7, 8, 9}। সুতরাং জোড় অবস্থানের উপাদানগুলি হল 1, 3, 5, 7, 9 (0 থেকে শুরু), এবং বিজোড় স্থানের উপাদানগুলি হল 2, 4, 6, 8৷ তাই জোড় স্থাপন করা ডেটার পার্থক্য হল |1 - 3| =2, তারপর |2 - 5| =3, |3 - 7| =4 এবং |4 - 9| =5 একইভাবে স্থানের বিজোড় সংখ্যার পার্থক্য 4 হবে।

অ্যালগরিদম

offEvenDiff(arr, n)

begin
   even := 0
   odd := 0
   for i := 0 to n-1, do
      if i is even, then
         even := |even – arr[i]|
      else
         odd := |odd – arr[i]|
   done
   return (odd,even)
end

উদাহরণ

#include<iostream>
#include<cmath>
using namespace std;
void oddEvenDiff(int arr[], int n, int &o, int &e) {
   int even = 0;
   int odd = 0;
   for (int i = 0; i < n; i++) {
      if (i % 2 == 0) {
         even = abs(even - arr[i]); //get the even difference
      } else {
         odd = abs(odd - arr[i]);
      }
   }
   e = even;
   o = odd;
}
main() {
   int arr[] = {1, 2, 3, 4, 5, 6, 7, 8, 9};
   int n = sizeof(arr) / sizeof(arr[0]);
   int odd, even;
   oddEvenDiff(arr, n, odd, even);
   cout << "The odd and even differences are: " << odd << " and " << even;
}

আউটপুট

The odd and even differences are: 4 and 5

  1. Go এবং C++ এর মধ্যে পার্থক্য।

  2. C++ এ একটি অ্যারেতে জোড় এবং বিজোড় সূচীকৃত উপাদানের পরম পার্থক্য?

  3. একটি অ্যারের (C++) মধ্যে সব জোড়া জোড়া ধারাবাহিক উপাদানের পরম পার্থক্য?

  4. C++ এ std::vector এবং std::array-এর মধ্যে পার্থক্য