不用+、-、×、÷做加法

来源:互联网 发布:sep软件 编辑:程序博客网 时间:2024/06/11 17:13

思想: 把加法分解:

1) 先做异或者

 2) 进位:(num1 & num2)<< 1   

 3) 再相加 ==>用递归来实现

int AddWithoutArithmetic(int num1, int num2){        if(num2 == 0)                return num1;         int sum = num1 ^ num2;        int carry = (num1 & num2) << 1;         return AddWithoutArithmetic(sum, carry);}

原创粉丝点击