【问题标题】:Understanding subtraction algorithm了解减法算法
【发布时间】:2013-08-27 16:16:48
【问题描述】:

来自MIT handout on number system

十进制减法的工作原理与十进制加法非常相似, 数字与相同的位置值和算法对齐 从右到左进行。底部的数字被减去 最高位,并将结果写入位置值位置 结果。如果最高位小于最低位,那么我们必须 从下一个位置值位置“借”。这意味着递减 下一个有效位置的最高数字并将基数添加到 在执行减法之前该位置的最高位。 当有一个“0”时,这个操作会变得更加复杂 下一个重要位置。

让我感到困惑的是段落中的倒数第二行。有人可以解释在执行减法之前减少下一个有效位置的高位数字并在该位置的高位数字上添加基数的含义。

【问题讨论】:

  • 这似乎不是一个编程问题。
  • @hatchet 它是关于一种算法的。算法的措辞引发了这个问题。

标签: algorithm math subtraction number-systems


【解决方案1】:

...并在执行减法之前将底数添加到该位置的最高位。

以 10 为底,表示将当前列左侧的最高位递减,然后将当前列的最高位加 10。

例如,在下面的减法中:

 21  
-19
---

为了在个列中减去,我必须从十列中借用,所以我将递减十列并将顶部列中的 1 加 10。如果你看到它写成这样可能会更熟悉:

 1 11  
-1  9
-----

【讨论】:

  • @Geek 查看我的编辑。这可能是你从小学开始就已经做过一百万次的事情了,你只是不再想它了。在纸上,您将划掉 2 并将其设为 1,然后将 1 放在个数列中的数字前面(添加 10)。
猜你喜欢
  • 2012-06-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-04-10
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多