您的位置:首页 > 其它

以指定原子操作实现加减乘法

2013-08-28 09:56 211 查看
题目:以计算机提供的如下原子操作,实现加、减、乘法。

赋值操作:b=a;
++a和a+1;
for(){......}有限循环;
操作数只能为0或者正整数;
定义函数

解答:
加法操作
int add(int a, int b)
{
int result = a;
for (int i = 0; i < b; ++i)
{
++result;
}
return result;
}


减法操作
int sub(int a, int b)
{
if (a < b)
return -1;
int result = 0;
for (; ; ++result)
{
if (a == add(result, b))
break;
}
return result;
}


乘法操作
int mul(int a, int b)
{
int result = 0;
for (int i = 0; i < b; ++i)
{
result += add(result, a);
}
return result;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: