1. 不用加减乘除做加法
写一个函数,求两个整数之和,要求在函数体内不得使用 “+”、“-”、“*”、“/” 四则运算符号。
方法一:
def add(a, b):while b!= 0:carry = a & ba = a ^ bb = carry << 1return a
方法二:
def add(num1, num2):sign = 1 if (num1 >= 0 and num2 >= 0) or (num1 < 0 and num2 < 0) else -1num1 = abs(num1)num2 = abs(num2)result = 0while num2 > 0:temp = num1 ^ num2carry = (num1 & num2) << 1num1 = tempnum2 = carryreturn result + (num1 * sign)