问题的问题的解决方案:请解释一下下面
考虑添加两个n位二进制整数,存储在两个正元件阵列A和B的两个整数的总和应该是问题以二进制形式存储在(n + 1) - 元素数组C中。正式说明问题并编写用于添加两个整数的伪代码。
解决方案:
- Ç←[1 ... N + 1]▹C是零填充。
- 对于i←1到n
- 做总和←A [I] + B [1] + C [i]于
- C [I]←总和%2
- C [I + 1]←总和/ 2▹整数除法。
- C输出
问题:
- 我认为C [i]为A [1] + B [i]于为什么要补充总和←A [I] + B [我] + C [i]在步骤3?
- 为什么总和%2(为什么需要在步骤4中使用的模?)
- 为什么总和/ 2(为什么需要使用部门在步骤5?)
请您上面有真正的解决办法解释例?谢谢。
考虑如何添加_by hand_十进制数字,如“179 + 256”。您可以逐位工作,将任何大于基数的结果“携带”到左边的“单元格”中...尝试使用手动添加小数添加的几个示例,然后尝试二进制添加。 :) – sarnold 2011-04-10 05:57:15