问题:实现一个函数,在不使用+、-、×、÷的情况下求两个或多个整数的和。

原理:

很明显,没有四则运算只能使用位运算。关键是通过位运算规律找到规律实现位运算对两个整数进行相加。通过分析位运算进位特点不难解决问题。但这里使用一种更新的思路:函数式的解决方案。

1
2
3
4
5
6
7
8
9
10
11
12
import functools
import operator

def sum(*args):
return functools.reduce(operator.add, args)

def test():
result = sum(1, 2, 3, 4, 5)
print(result)

if __name__ == '__main__':
test()

完。