इस ट्यूटोरियल में, हम एक प्रोग्राम लिखने जा रहे हैं जो किसी संख्या की समता का पता लगाता है।
हम xor . का उपयोग करते हुए निम्नलिखित संक्रियाओं को प्रभावी ढंग से निष्पादित करके किसी संख्या की समता का पता लगा सकते हैं और राइट-शिफ्ट ऑपरेटरों।
int b; b = n ^ (n >> 1); b = b ^ (b >> 2); b = b ^ (b >> 4); b = b ^ (b >> 8); b = b ^ (b >> 16);
यदि परिणाम का अंतिम बिट 1 है तो यह विषम समता और समता भी है।
उदाहरण
आइए कोड देखें।
#include <bits/stdc++.h>
using namespace std;
void findParity(int n) {
int b;
b = n ^ (n >> 1);
b = b ^ (b >> 2);
b = b ^ (b >> 4);
b = b ^ (b >> 8);
b = b ^ (b >> 16);
if ((b & 1) == 0) {
cout << "Even Parity" << endl;
}
else {
cout << "Odd Parity" << endl;
}
}
int main() {
int n = 15;
findParity(n);
return 0;
} आउटपुट
यदि आप उपरोक्त कोड चलाते हैं, तो आपको निम्न परिणाम प्राप्त होंगे।
Even Parity
निष्कर्ष
यदि ट्यूटोरियल में आपके कोई प्रश्न हैं, तो उनका टिप्पणी अनुभाग में उल्लेख करें।