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

C++ में किसी संख्या के प्रत्येक सेट बिट के लिए दूसरी संख्या के बिट्स को टॉगल करें


इस समस्या में, हमें दो पूर्णांक मान दिए गए हैं। हमारा कार्य एक C++ प्रोग्राम बनाना है जो यह ऑपरेशन करे: किसी संख्या के प्रत्येक सेट बिट के लिए दूसरी संख्या के बिट्स को टॉगल करें।

समस्या को समझने के लिए एक उदाहरण लेते हैं

इनपुट: 3 7 आउटपुट: 4 3 का बाइनरी: 011 7 का बाइनरी: 111

दूसरी संख्या के पहले और दूसरे बिट्स फ्लिप हो जाते हैं जिससे यह 100 यानी 4 बन जाता है।

समाधान दृष्टिकोण

इस समस्या को हल करने का एक दृष्टिकोण दोनों संख्याओं पर XOR ऑपरेशन करना है। परिणाम उन बिट्स के लिए टॉगल हो जाएगा जहां पहली संख्या के बिट्स 1 हैं, XOR ऑपरेशन का उपयोग करके।

उदाहरण

हमारे समाधान के कार्य को दर्शाने वाला प्रोग्राम

#include <bits/stdc++.h> using namespace std; int main(){    int a = 3, b = 7;    cout<<"संख्याएं हैं "<<a<<" & "<<b<<endl;    cout<<"बिट्स फ्लिप करने का परिणाम है "<<(a ^ b);    return 0; }

आउटपुट

संख्याएं हैं 3 & 7 बिट्स फ्लिप करने का परिणाम है 4

  1. - C++ में सेट बिट्स की संख्या के अनुसार ऐरे सॉर्ट करें

    यहां हम सेट-बिट्स के आधार पर ऐरे को सॉर्ट करने की एक दिलचस्प समस्या देखेंगे। जब ऐरे में किसी एलिमेंट में अधिक सेट-बिट्स होते हैं, तो उसे उस एलिमेंट से पहले रखा जाएगा जिसमें कम सेट बिट्स होते हैं। मान लीजिए कुछ नंबर्स हैं 12, 15, 7। तो सेट बिट्स मूल रूप से उनके बाइनरी प्रतिनिधित्व में 1s की संख्या है

  1. - C++ में k सेट बिट्स के साथ नंबर को अधिकतम करने के लिए न्यूनतम फ्लिप्स

    समस्या कथनदो नंबर n और k दिए गए हैं, हमें दिए गए नंबर को उसके बिट्स फ्लिप करके अधिकतम करने के लिए आवश्यक न्यूनतम फ्लिप्स की संख्या ढूंढनी है जैसे कि परिणामी नंबर में ठीक k सेट बिट्स हों। कृपया ध्यान दें कि इनपुट को कंडीशन पूरी करनी चाहिए कि k, n में बिट्स की संख्या से कम हो।उदाहरणमान लीजिए n = 9 और

  1. - C/C++ में बिट को कैसे सेट, क्लियर, और टॉगल करें?

    आप C, C++, Python, और अन्य सभी प्रोग्रामिंग भाषाओं में बिटवाइज़ ऑपरेटर्स का उपयोग करके बिट्स को सेट, क्लियर, और टॉगल कर सकते हैं जो इन ऑपरेशन्स को सपोर्ट करते हैं। आपको बिट को सही स्थान पर लाने के लिए बिटशिफ्ट ऑपरेटर का भी उपयोग करना होगा। बिट सेट करना बिट सेट करने के लिए, हमें बिटवाइज़ OR ऑपरेटर