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

আরিথমেটিক অপারেটর ছাড়া সি/সি++-তে দুটি সংখ্যা যোগ করা


এই আর্টিকেলে আমরা দেখব কিভাবে +, ++, -, -- এর মতো আর্থমেটিক অপারেটর ব্যবহার না করেই দুটি সংখ্যা যোগ করা যায়।

এই সমস্যাটি সমাধান করতে আমরা বাইনারি অ্যাডার লজিক ব্যবহার করতে পারি। সেক্ষেত্রে হাফ অ্যাডার এবং ফুল অ্যাডার ডিজাইন করা হয়। এই অ্যাডারগুলো এক বিটের বাইনারি সংখ্যা যোগ করতে পারে। একাধিক অ্যাডার ক্যাসকেড করে বড় সংখ্যা যোগ করার সার্কিট তৈরি করা যায়।

সেই অ্যাডারে, আমরা সংখ্যাগুলোর মধ্যে XOR অপারেশন করি, তারপর ক্যারি (carry) পাওয়ার জন্য AND লজিক প্রয়োগ করি। এই বৈশিষ্ট্যগুলো এখানে ইমপ্লিমেন্ট করা হয়েছে দুটি সংখ্যা যোগ করতে।

উদাহরণ কোড

#include <iostream>
using namespace std;

int add(int a, int b) {
    while (b != 0) { // যতক্ষণ ক্যারি থাকে ততক্ষণ ইটারেট
        int carry = a & b; // a এবং b-কে AND করে ক্যারি বের করা
        a = a ^ b; // a এবং b-র ওপর XOR অপারেশন করে a-তে স্টোর
        b = carry << 1; // ক্যারিকে এক বিট বামে শিফট করে b-তে স্টোর
    }
    return a;
}

int main() {
    int a, b;
    cout << "Enter two numbers to add: ";
    cin >> a >> b;
    cout << "The result is: " << add(a, b);
    return 0;
}

আউটপুট

Enter two numbers to add: 56 23
The result is: 79
  1. C++ প্রোগ্রাম: দুটি সংখ্যা যোগ করা (Addition)

  2. PHP – bcadd() ফাংশন ব্যবহার করে দুটি যাদুসংখ্যা প্রিসিশন সংখ্যা কীভাবে যোগ করতে হয়?

  3. C#-এ অস্থায়ী ভেরিয়েবল ছাড়া দুটি সংখ্যা সোয়াপ করা

  4. পাইথনে দুটি ম্যাট্রিক্স যোগ করা