কম্পিউটার টিউটোরিয়াল

C++ প্রোগ্রামে n সংখ্যক বাইনারি স্ট্রিং যোগ করা


ভূমিকা

একাধিক বাইনারি স্ট্রিং (যেমন "1011", "10", "1001") দেওয়া থাকলে, সেগুলো বাইনারি আডিশন (binary addition) করেক একই স্ট্রিং আকারে যোগফল বের করতে হবে।

উদাহরণ

ইনপুট: "1011", "10", "1001"
আউটপুট: 10110

এলগরিদম

string add(b1, b2)
  i = b1.length-1, j = b2.length-1, carry = 0
  যতক্ষণ i>=0 বা j>=0 বা carry==1:
    sum = carry
    যদি i>=0: sum += b1[i]-'0', i--
    যদি j>=0: sum += b2[j]-'0', j--
    result = char(sum%2 + '0') + result
    carry = sum/2
  রিটার্ন result

string addBinary(arr[], n)
  result = ""
  i = 0 থেকে n-1: result = add(result, arr[i])
  রিটার্ন result

C++ প্রোগ্রাম উদাহরণ

#include 
using namespace std;

string addBinaryStrings(string a, string b) {
    string res = "";
    int i = a.size()-1, j = b.size()-1, carry = 0;
    while (i >= 0 || j >= 0 || carry) {
        int sum = carry;
        if (i >= 0) sum += a[i--] - '0';
        if (j >= 0) sum += b[j--] - '0';
        res = char(sum % 2 + '0') + res;
        carry = sum / 2;
    }
    return res;
}

string addMultiple(string arr[], int n) {
    string res = "";
    for (int i = 0; i < n; i++)
        res = addBinaryStrings(res, arr[i]);
    return res;
}

int main() {
    string arr[] = {"1011", "10", "1001"};
    cout << addMultiple(arr, 3) << endl; // 10110
    return 0;
}

আউটপুট

10110
  1. জাভাস্ক্রিপ্টে টেমপ্লেট স্ট্রিংস

  2. সি++-এ দুটি বাইনারি স্ট্রিং যোগ করার প্রোগ্রাম

  3. C#-এ বাইনারি সার্চ (Binary Search)

  4. কনসিকিউটিভ ১ ছাড়া বাইনারি স্ট্রিংয়ের সংখ্যা গণনা করার পাইথন প্রোগ্রাম