問題的問題的解決方案:請解釋一下下面
考慮添加兩個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