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
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