所以问题是:“考虑一个增加两个n位二进制整数的问题,它存储在两个n元素数组A和B中。两个整数的和应该以二进制形式存储在(n+1)-element数组C中。正式地描述这个问题,并为添加这两个整数编写伪代码。”
对于这个问题,我的python代码是:
A = [1,0,1,1,0,1,0]
B = [1,1,1,0,1,0,0]
n = len(A)
C = [0,0,0,0,0,0,0,0]
for i in range(0, n):
C[i] = A[i] + B[i] + C[i]
if C[i] == 2:
C[i] = 0
C[i+1] == 1
elif C[i] == 3:
C[i] = 1
C[i+1] = 1
print C另外,我在左边的上取了最不重要的数字,这可以在我做完计算后倒转。
我搞不懂是什么错误,请帮帮忙!
发布于 2015-07-08 18:51:30
C[i+1] == 1做比较,不做任务.
发布于 2016-05-28 19:20:28
为了简洁起见,您可能需要稍微修改一下(伪代码):
for i = C.length to i = 2
C[i] = C[i] + A[i-1] + B[i-1]
if C[i] > 1
C[i-1] = C[i-1] + 1
C[i] = C[i] - 2https://stackoverflow.com/questions/31301211
复制相似问题