不用加减乘除做加法(简单,数学)

题目描述
写一个函数,求两个整数之和,要求在函数体内不得使用+、-、*、/四则运算符号。
示例1
输入
1,2
返回值
3
nun1^nun2:不算进位的加结果
(num1&num2)<<1:进位的数
两整数的和=不算进位的加结果+进位的数;
就一直重复到无进位就是结果了

class Solution {
    
    
public:
    int Add(int num1, int num2) {
    
    
       while(num2)
       {
    
    
           int a=num1^num2,b=(num1&num2)<<1;
           num1=a;num2=b;
       }
        return num1;
    }
};

猜你喜欢

转载自blog.csdn.net/weixin_43540515/article/details/114295733