請問下列pseudocode的作用為何? PC1(A, B) C = new integer[A.length + 1] carry = 0 for i = 1 to A.length C[i] = (A[i] + B[i] + carry) % 2 carry = (A[i] + B[i] + carry) / 2 C[i + 1] = carry return C
A兩個浮點數相加
B兩個二進位整數相加正確答案
C兩個整數相加
D兩個長整數相加
答案與詳解
正確。A、B 是每格存一個位元(0 或 1)的陣列,從第 1 位開始逐位相加:三者和為 0~3,% 2 得到該位的值,/ 2(整數除法)得到 0 或 1 的進位;迴圈結束後把最後的進位存進多開的那一格,完成兩個 n 位元二進位整數的加法。
Examly 收錄 38 萬+ 道歷屆題目,每題都有像這樣的精選詳解。免費下載,立即開練。
