解答:其实这个就是计算机实现加法的原理来实现的。所以我们可以通过二进制的位移来实现。
代码如下:
#include <iostream>
using namespace std;
int main()
{
int num1,num2;
int sum ,temp;
cin>>num1 ;
cin>>num2;
while( num2!=0 )
{
sum = num1 ^ num2;
temp = num1 & num2;
num1 = sum;
num2 = temp;
}
cout <<num1<<endl;
return 0;
}
有什么不对的地方,请个人指正。
#include <iostream>
using namespace std;
int main()
{
int num1,num2;
int sum ,temp;
cin>>num1 ;
cin>>num2;
while( num2!=0 )
{
sum = num1 ^ num2;
temp = num1 & num2;
num1 = sum;
num2 = temp;
}
cout <<num1<<endl;
return 0;
}