हमें एक पूर्णांक सरणी दी गई है और कार्य जोड़े की कुल संख्या की गणना करना है जो दिए गए सरणी मानों का उपयोग करके बनाई जा सकती हैं जैसे कि जोड़े पर और ऑपरेशन के परिणामस्वरूप एक विषम संख्या होगी।
और संचालन के लिए सत्य तालिका नीचे दी गई है
A | B | A^B |
0 | 0 | 0 |
1 | 0 | 0 |
0 | 1 | 0 |
1 | 1 | 1 |
इनपुट - int arr[] ={2, 5, 1, 8, 9}
आउटपुट − बिटवाइज़ और ODD नंबर वाले युग्मों की संख्या है − 3
स्पष्टीकरण -
a1 | a2 | a1^a2 |
2 | 5 | 0 |
2 | 1 | 0 |
2 | 8 | 0 |
2 | 9 | 0 |
5 | 1 | 1 |
5 | 8 | 0 |
5 | 9 | 1 |
1 | 8 | 0 |
1 | 9 | 1 |
8 | 9 | 8 |
नीचे दिए गए प्रोग्राम में इस्तेमाल किया गया तरीका इस प्रकार है
-
एक जोड़ी बनाने के लिए पूर्णांक तत्वों की एक सरणी इनपुट करें
-
एक सरणी के आकार की गणना करें आगे की प्रक्रिया के लिए डेटा को फ़ंक्शन में पास करें
-
AND ऑपरेशन से बने युग्मों को विषम मान के रूप में संग्रहीत करने के लिए एक अस्थायी चर गणना बनाएँ।
-
एक सरणी के आकार तक i से 0 तक के लिए लूप प्रारंभ करें
-
लूप के अंदर, IF arr[i]% 2 ==TRUE चेक करें और फिर गिनती को 1 तक बढ़ाएँ
-
गिनती को गिनती के रूप में सेट करें * (गिनती -1) / 2
-
गिनती वापस करें
-
परिणाम प्रिंट करें।
उदाहरण
#include <iostream> using namespace std; //Count pairs with Bitwise AND as ODD number int count_pair(int arr[], int size){ int count = 0; for (int i = 0; i < size; i++){ if ((arr[i] % 2 == 1)){ count++; } } count = count * (count - 1) / 2; return count; } int main(){ int arr[] = {2, 5, 1, 8, 9, 2, 7}; int size = sizeof(arr) / sizeof(arr[0]); cout<<"Count of pairs with Bitwise AND as ODD number are: "<<count_pair(arr, size) << endl; return 0; }
आउटपुट
यदि हम उपरोक्त कोड चलाते हैं तो यह निम्न आउटपुट उत्पन्न करेगा -
Count of pairs with Bitwise AND as ODD number are: 6