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

C++ এ প্রদত্ত সংখ্যা সহ অ্যারের উপাদানগুলির গড় ঘটনা গণনা করুন


পূর্ণসংখ্যা উপাদান এবং একটি পূর্ণসংখ্যা সম্বলিত একটি অ্যারে arr[] দেওয়া হয়েছে। লক্ষ্য হল প্রতিটি উপাদানের arr[i] এবং সংখ্যার গড় খুঁজে বের করা এবং মূল অ্যারেতে যে গড় কতবার উপস্থিত হয়েছে তার সংখ্যা প্রিন্ট করা।

যদি অ্যারে অ্যারে[] হয় [ 5, 2, 3 ] এবং সংখ্যাটি 2 হয়। গড় হবে [ 3, 2, 2 ] arr[] এ [ 1,1,1 ]

উদাহরণস্বরূপ

ইনপুট

arr[] = { 1, 6, 4, 3, 6, 4 } num=2

আউটপুট

1 2 1 0 2 1

একটি প্রদত্ত সংখ্যা সহ অ্যারের উপাদানগুলির গড় ঘটনার সংখ্যা হল −5

ব্যাখ্যা

The num is 4 and averages with all other numbers in arr[] is :
[ 1, 4, 3, 2, 4, 3 ] occurrences of these in arr[]= [ 1, 2, 1, 0, 2, 1 ]

ইনপুট

arr[] = { 4, 8, 24, 16, 20, 40 } num=4

আউটপুট

1 0 0 0 0 0

একটি প্রদত্ত সংখ্যা সহ অ্যারের উপাদানগুলির গড় ঘটনার সংখ্যা হল − 1

ব্যাখ্যা

The num is 4 and averages with all other numbers in arr[] is :
[ 4, 6, 14, 10, 12, 22 ] occurrences of these in arr[]= [ 1, 0, 0, 0, 0, 0 ]

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

এই পদ্ধতিতে আমরা মূল অ্যারেতে গড় এবং তাদের গণনা সংরক্ষণ করার জন্য একটি মানচিত্র তৈরি করব। ঘটনার সংখ্যা প্রিন্ট করতে আমরা এই সংখ্যাগুলিকে একটি পৃথক অ্যারেতে যুক্ত করব৷

  • পূর্ণসংখ্যার প্রকারের একটি arr[] নিন।

  • পূর্ণসংখ্যা হিসাবে ইনপুট সংখ্যা নিন।

  • ফাংশন উপস্থিতি_ গড় (int arr[], int size, int num) ইনপুট অ্যারে এবং num নেয় এবং arr[]-এ গড় সংঘটন অ্যারে প্রিন্ট করে। এটি অ-শূন্য ঘটনার গণনা প্রদান করে।

  • প্রারম্ভিক গণনা=0 নিন।

  • একটি মানচিত্র নিন map_pair arr[] এ অনন্য সংখ্যার গণনা সংরক্ষণ করতে।

  • প্রতিটি গড় গণনা সঞ্চয় করার জন্য একটি অ্যারে মোট[] নিন।

  • সূচী i=0 থেকে i

  • লুপের শেষে আমাদের কাছে কী হিসাবে অনন্য সংখ্যা রয়েছে এবং মান হিসাবে arr[] এ তাদের গণনা রয়েছে।

  • প্রতিটি পৃথক উপাদানের সাথে সংখ্যার গড় গণনা করতে এবং টেম্পে সংরক্ষণ করার জন্য লুপ ব্যবহার করে আবার অ্যারেটি অতিক্রম করুন৷

  • যদি টেম্পটি map_pair.find(temp) !=map_pair.end() ব্যবহার করে map_pair-এ পাওয়া যায়, তাহলে এটিকে অ্যারের মোট যোগ করুন।

  • arr[] এ ঘটতে থাকা গড় গণনার জন্য অ্যারে মোট মুদ্রণ করুন। প্রতিটি অ-শূন্য উপাদানের জন্য, বৃদ্ধির সংখ্যা।

  • ফলাফল হিসাবে রিটার্ন গণনা।

উদাহরণ

#include<bits/stdc++.h>
using namespace std;
int occurrence_average(int arr[], int size, int num){
   int count = 0;
   map<int,int> map_pair;
   int total[size] = {0};
   int val, av;
   for (int i = 0; i < size; i++){
      if (map_pair[arr[i]] == 0){
         map_pair[arr[i]] = 1;
      } else {
         map_pair[arr[i]]++;
      }
   }
   for (int i = 0; i < size; i++){
      int temp = int((arr[i] + num) / 2);
      if(map_pair.find(temp) != map_pair.end()){
         int set = map_pair[temp];
         total[i] = set;
      }
   }
   cout<<endl;
   for(int i=0;i<size;i++){
      cout<<total[i]<<" ";
      if(total[i]>0){
         count++;
      }
   }
   return count;
}
int main(){
   int arr[] = { 4, 8, 24, 16, 20, 40 };
   int size = sizeof(arr)/sizeof(arr[0]);
   int num = 4;
   cout<<endl<<"Count of occurrences of the average of array elements with a given
      number are: "<<occurrence_average(arr, size, num);
}

আউটপুট

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

উৎপন্ন করবে
Count of occurrences of the average of array elements with a given number are:
1 0 0 0 0 0 1

  1. C++ এ প্রদত্ত অ্যারেতে থাকা স্বতন্ত্র জোড়ার সংখ্যা গণনা করুন

  2. C++ অ্যারেতে দুটি প্রদত্ত উপাদানের মধ্যে উপাদানের সংখ্যা গণনা করুন

  3. C++ এ উপাদানগুলির প্রদত্ত সেট সহ আয়তক্ষেত্র এবং বর্গক্ষেত্রের সম্ভাব্য সংখ্যা

  4. C++ এ একটি অ্যারেতে জোড় এবং বিজোড় উপাদানের সংখ্যা গণনা করুন