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

C++ में बिट्स का उपयोग करके दो अनसाइन्ड नंबर जोड़ना


बिट्स के स्ट्रीम के रूप में दर्शाया गया एक अनसाइन्ड नंबर बाइनरी रूप में लिखा जाता है।

54 का बाइनरी रूप 110110 है।

बिट्स का उपयोग करके दो नंबर जोड़ने के लिए, हम बाइनरी एडिशन लॉजिक का उपयोग करके उनके बाइनरी रूप को जोड़ेंगे।

बिट एडिशन के नियम हैं:

  • 0+0 = 0
  • 1+0 = 1
  • 0+1 = 1
  • 1+1 = 0 कैरी = 1 के साथ

दो नंबर जोड़ने का एक उदाहरण लेते हैं,

इनपुट: a = 21 (10101), b = 27 (11011)
आउटपुट: 48 (110000)

व्याख्या − 10101 + 11011 = 110000। हम कम से कम महत्वपूर्ण बिट से शुरू करके बिट्स जोड़ेंगे। और फिर अगले बिट पर आगे बढ़ेंगे।

उदाहरण

#include <bits/stdc++.h>
#define M 32
using namespace std;
int binAdd(bitset atemp, bitset btemp){
    bitset ctemp;
    for (int i = 0; i < M; i++)
        ctemp[i] = 0;
    int carry = 0;
    for (int i = 0; i < M; i++) {
        if (atemp[i] + btemp[i] == 0){
            if (carry == 0)
                ctemp[i] = 0;
            else {
                ctemp[i] = 1;
                carry = 0;
            }
        }
        else if (atemp[i] + btemp[i] == 1){
            if (carry == 0)
                ctemp[i] = 1;
            else{
                ctemp[i] = 0;
            }
        }
        else{
            if (carry == 0){
                ctemp[i] = 0;
                carry = 1;
            }
            else{
                ctemp[i] = 1;
            }
        }
    }
    return ctemp.to_ulong();
}
int main() {
    int a = 678, b = 436;
    cout << "The sum of " << a << " and " << b << " is ";
    bitset num1(a);
    bitset num2(b);
    cout << binAdd(num1, num2) << endl;
}

आउटपुट

The sum of 678 and 436 is 1114

  1. - C++ प्रोग्राम: दो संख्याओं को स्वैप करें

    परिचयदो संख्याओं को स्वैप करने का प्रोग्राम बनाने के दो तरीके हैं। एक में टेम्प वेरिएबल का उपयोग शामिल है और दूसरा तरीका तीसरे वेरिएबल का उपयोग नहीं करता है। इन्हें विस्तार से समझाया गया है - टेम्प वेरिएबल का उपयोग करके दो संख्याओं को स्वैप करेंउदाहरण#include <iostream> using namespace std; i

  1. - C++ प्रोग्राम: दो संख्याएं जोड़ें

    परिचयजोड़ एक बुनियादी अंकगणितीय संक्रिया है। दो संख्याओं को जोड़ने वाला प्रोग्राम दो संख्याओं का जोड़ करता है और उनका योग स्क्रीन पर प्रिंट करता है। उदाहरण#include <iostream> using namespace std; int main() { int num1 = 15, num2 = 10, sum; sum = num1 + num2; cout << Sum of

  1. - पायथन में दो संख्याओं को जोड़ना

    मान लीजिए हमारे पास दो नॉन-एम्प्टी लिंक्ड लिस्ट्स दी गई हैं। ये दो लिस्ट्स दो नॉन-नेगेटिव इंटीजर नंबर्स को दर्शाती हैं। अंक रिवर्स ऑर्डर में स्टोर हैं। उनके प्रत्येक नोड्स में केवल एक अंक होता है। दो संख्याओं को जोड़ें और परिणाम को लिंक्ड लिस्ट के रूप में लौटाएं। हम यह मान रहे हैं कि दोनों संख्याओं