/****************************************************************************************
*题目:不用加减乘除做加法
* 写一个函数,求两个整数之和,要求在函数体内不得使用+、-、X、÷四则运算符号
*时间:2015年10月6日16:33:41
*文件:AddTwoNumbers.java
*作者:cutter_point
****************************************************************************************/
package bishi.Offer50.y2015.m10.d06;
import org.junit.Test;
public class AddTwoNumbers
{
public int add(int num1, int num2)
{
//显然我们应该使用位运算
int sum, carry;
do
{
sum = num1 ^ num2; //这个是不算进位的和
carry = (num1 & num2) << 1; //这个是进位
num1 = sum;
num2 = carry;
}while(num2 != 0); //不为0表示还有进位
return num1;
}
@Test
public void test()
{
AddTwoNumbers a = new AddTwoNumbers();
System.out.println(a.add(1, 998));
}
}
【笔试】54、不用加减乘除做加法
最新推荐文章于 2024-04-16 22:17:26 发布