इस Program में हमें दिए गए Binary Numbers को Add करना होता है। n बाइनरी नंबर हैं और आउटपुट के रूप में एक बाइनरी नंबर देने के लिए हमें उन सभी को जोड़ना होगा।
इसके लिए हम बाइनरी एडिशन लॉजिक का उपयोग करेंगे और परिणाम प्राप्त करने के लिए 1 से N तक के सभी पदों को एक-एक करके जोड़ेंगे।
Input: "1011", "10", "1001" Output: 10110
स्पष्टीकरण
आसान तरीका है बाइनरी स्ट्रिंग को उसके दशमलव समकक्ष में बदलना, फिर उन्हें जोड़ना और फिर से बाइनरी में कनवर्ट करना। यहां हम जोड़ मैन्युअल रूप से करेंगे। हम दो बाइनरी स्ट्रिंग्स जोड़ने के लिए एक सहायक फ़ंक्शन का उपयोग करेंगे। उस फ़ंक्शन का उपयोग n-1 बार के लिए n भिन्न बाइनरी स्ट्रिंग्स के लिए किया जाएगा।
उदाहरण
#include<iostream> using namespace std; string add(string b1, string b2) { string res = ""; int s = 0; int i = b1.length() - 1, j = b2.length() - 1; while (i >= 0 || j >= 0 || s == 1) { if(i >= 0) { s += b1[i] - '0'; } else { s += 0; } if(j >= 0) { s += b2[j] - '0'; } else { s += 0; } res = char(s % 2 + '0') + res; s /= 2; i--; j--; } return res; } string addbinary(string a[], int n) { string res = ""; for (int i = 0; i < n; i++) { res = add(res, a[i]); } return res; } int main() { string arr[] = { "1011", "10", "1001" }; int n = sizeof(arr) / sizeof(arr[0]); cout << addbinary(arr, n) << endl; }