Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> C++

सी ++ में सम और विषम उत्पाद के साथ ऑर्डर किए गए जोड़े की संख्या की गणना करें


हमें n धनात्मक संख्याओं की एक सरणी दी गई है। लक्ष्य arr[x] और arr के गुणनफल के साथ क्रमबद्ध जोड़े (arr[x], arr[y]) को गिनना है [y] सम या विषम है। जोड़ी (arr[i],arr[j] ) और (arr[j],arr[i] को अलग से गिना जाता है।

हम प्रत्येक जोड़े की संख्या के लिए दो for लूप का उपयोग करके सरणी को पार करेंगे। अब उत्पाद की गणना करें, यदि यह सम उत्पादों के लिए भी 2 की वृद्धि है, अन्यथा विषम उत्पादों के लिए 2 से वृद्धि की गणना की जाती है।

आइए उदाहरणों से समझते हैं।

इनपुट - अर []={ 1,1,2,3 } एन=4

आउटपुट − सम उत्पाद युग्मों की संख्या:6 विषम उत्पाद युग्मों की संख्या:6

स्पष्टीकरण − मान्य विषम उत्पाद जोड़े हैं −

Arr[0] & Arr[1] → (1,1) Arr[1] & Arr[0] → (1,1) count=2
Arr[0] & Arr[3] → (1,3) Arr[3] & Arr[0] → (3,1) count=2
Arr[1] & Arr[3] → (1,3) Arr[3] & Arr[1] → (3,1) count=2 Total=6
Valid even product pairs are:
Arr[0] & Arr[2] → (1,2) Arr[2] & Arr[0] → (2,1) count=2
Arr[1] & Arr[2] → (1,2) Arr[2] & Arr[1] → (2,1) count=2
Arr[2] & Arr[3] → (2,3) Arr[3] & Arr[2] → (3,2) count=2 Total=6

इनपुट - अर []={ 2,2,2 } एन=3

आउटपुट − सम उत्पाद युग्मों की संख्या − 6 विषम उत्पाद युग्मों की संख्या − 0

स्पष्टीकरण − मान्य सम उत्पाद जोड़े हैं −

Arr[0] & Arr[1] → (2,2) Arr[1] & Arr[0] → (2,2) count=2
Arr[1] & Arr[2] → (2,2) Arr[2] & Arr[1] → (2,2) count=2
Arr[2] & Arr[3] → (2,2) Arr[3] & Arr[2] → (2,2) count=2 Total=6
No odd product as all elements are even.

नीचे दिए गए प्रोग्राम में इस्तेमाल किया गया तरीका इस प्रकार है

  • हम एक पूर्णांक सरणी लेते हैं arr[] यादृच्छिक संख्याओं के साथ आरंभ किया गया।

  • एक वैरिएबल n लें जो Arr[] की लंबाई को स्टोर करता है।

  • फ़ंक्शन काउंटपेयर्स (int arr[], int n) एक सरणी लेता है, इसकी लंबाई इनपुट के रूप में और सम और विषम उत्पादों के साथ जोड़े की संख्या को प्रिंट करता है।

  • जोड़ी के प्रत्येक तत्व के लिए लूप के लिए दो का उपयोग करके ट्रैवर्स सरणी।

  • 0<=i

  • जांचें कि क्या गिरफ्तारी [i] * गिरफ्तार [जे]% 2 ==0। arr[i],arr[j] और arr[j],arr[i] के रूप में सम उत्पाद युग्मों की गणना के लिए 2 से वृद्धि गणना1 दो जोड़े होंगे।

  • यदि उपरोक्त शर्त विषम उत्पाद युग्मों के लिए 2 से झूठी वृद्धि गणना2 है।

  • सभी लूपों के अंत में count1 में जोड़े की कुल संख्या होगी जिसमें सम उत्पाद होगा और count2 में विषम उत्पाद वाले जोड़े की कुल संख्या होगी

  • परिणाम के रूप में count1 और count2 प्रिंट करें।

उदाहरण

#include <bits/stdc++.h>
using namespace std;
void countPairs(int arr[], int n){
   int count1=0; //even product pairs
   int count2=0; //odd product pairs
   int prod=1;
   for(int i=0;i<n-1;i++){
      for(int j=i+1;j<n;j++){
         prod=arr[i]*arr[j];
         if(prod%2==0) //product is even
            { count1+=2; } //(a,b) and (b,a) as two pairs
         else
            { count2+=2; }
      }
   }
   cout<<"Even Product pairs: "<<count1;
   cout<<endl<<"Odd Product pairs: "<<count2;
}
int main(){
   int arr[] = { 1,2,7,3 };
   int n = sizeof(arr) / sizeof(int);
   countPairs(arr, n);
   return 0;
}

आउटपुट

यदि हम उपरोक्त कोड चलाते हैं तो यह निम्न आउटपुट उत्पन्न करेगा -

Even Product pairs: 6
Odd Product pairs: 6

  1. C++ में एक पूर्णांक में सम और विषम अंकों की गणना करें

    हमें एक पूर्णांक संख्या दी गई है और कार्य सम संख्याओं और विषम संख्याओं को एक अंक में गिनना है। साथ ही, हम यह भी जांचते रहेंगे कि क्या किसी पूर्णांक में सम अंक सम संख्या में आ रहे हैं और पूर्णांक में विषम अंक विषम संख्या में बार-बार आ रहे हैं। उदाहरण के लिए Input − digit = 12345 Output −

  1. C++ में किसी सरणी में सम और विषम तत्वों की संख्या गिनें

    इस ट्यूटोरियल में, हम किसी सरणी में सम और विषम तत्वों की संख्या ज्ञात करने के लिए एक प्रोग्राम पर चर्चा करेंगे। इसके लिए हमें एक सरणी प्रदान की जाएगी। हमारा काम दिए गए सरणी में सम और विषम तत्वों की संख्या की गणना करना है। उदाहरण #include<iostream> using namespace std; void CountingEvenOdd(int

  1. C++ में विषम और सम संख्या वाले सभी स्तरों को प्रिंट करें

    इस समस्या में हमें एक पेड़ दिया जाता है। और हमें सभी स्तरों को सम संख्या में नोड्स और विषम संख्या में नोड्स के साथ प्रिंट करना होगा। आइए अवधारणा को बेहतर ढंग से समझने के लिए एक उदाहरण लेते हैं आउटपुट - Levels with odd number of nodes: 1, 3, 4 Levels with even number of nodes: 2 स्पष्टीकरण - पह