Add two numbers using bitwise operators in c++

C++ program for Add two numbers using bitwise operators. Here more information.

// Include header file
#include <iostream>
using namespace std;
// C++ program for
// Add two numbers using of bitwise operators
class NumberAddition
{
	public:
		// Add two numbers
		void addition(int a, int b)
		{
			// Display given numbers
			cout << "\n [(" << a << ") + (" << b << ")] ";
			// Auxiliary variable which are store the carry bit result
			int carry = 0;
			// Executing loop, until b value is not zero
			while (b != 0)
			{
				// Get carry bits of a &b
				carry = a &b;
				// Sum of bits of a ^ b
				a = a ^ b;
				// Shift the carry bit by one bit in left side
				b = carry << 1;
			}
			// Display add result
			cout << " : " << a;
		}
};
int main()
{
	NumberAddition *task = new NumberAddition();
	// Test Case
	task->addition(8, -2);
	task->addition(5, 3);
	task->addition(-3, -5);
	return 0;
}

Output

 [(8) + (-2)]  : 6
 [(5) + (3)]  : 8
 [(-3) + (-5)]  : -8



Comment

Please share your knowledge to improve code and content standard. Also submit your doubts, and test case. We improve by your feedback. We will try to resolve your query as soon as possible.

New Comment







© 2022, kalkicode.com, All rights reserved