如何用PYTHON解决二进制求和问题

 时间:2024-10-13 14:46:48

1、打开JUPYTER NOTEBOOK。

如何用PYTHON解决二进制求和问题

2、a = "1010"b = "1011"Output: "10101" 这是我们要计算的最终结果

如何用PYTHON解决二进制求和问题

3、index_a = len(a) - 1index_b = len(b) - 1这里看似定义长度,实际要定义序号,因为要倒序的方式进行计算。

如何用PYTHON解决二进制求和问题

4、carry = 0sum = ""设置进位的计算变量,最终结果要以字符串为目标。

如何用PYTHON解决二进制求和问题

5、while index_a >= 0 or index_b >= 0: index_a, index_b = (index_a - 1), (index_b - 1) 因为要倒序,可以设置一下循环的条件。

如何用PYTHON解决二进制求和问题

6、while index_a >= 0 or index_b >= 0: if index_a >= 0: x = int(a[index_a]) else: x = 0让每个数相加要先转换为整型。 index_a, index_b = (index_a - 1), (index_b - 1)

如何用PYTHON解决二进制求和问题

7、while index_a >= 0 or index_b >= 0: if index_a >= 0: x = int(a[index_a]) else: x = 0 if index_b >= 0: y = int(b[index_b]) else: y = 0两边都设置一下,循环完了其中一个就要等于0。 index_a, index_b = (index_a - 1), (index_b - 1)

如何用PYTHON解决二进制求和问题

8、while index_a >= 0 or index_b >= 0: if index_a >= 0: x = int(a[index_a]) else: x = 0 if index_b >= 0: y = int(b[index_b]) else: y = 0 if (x + y + carry) % 2 == 0: sum = sum + "0"每一位相加只有4种结果,0,1,2,3,。余数为0和2的时候当前的数要变为0. index_a, index_b = (index_a - 1), (index_b - 1)

如何用PYTHON解决二进制求和问题

9、while index_a >= 0 or index_b >= 0: if index_a >= 0: x = int(a[index忧溲枷茫_a]) else: x = 0 if index_b >= 0: y = int(b[index_b]) else: y = 0 if (x + y + carry) % 2 == 0: sum = sum + "0" else: sum = sum + "1"每一位相加只有4种结果,0,1,2,3,。余数为1和3的时候当前数要变为1. index_a, index_b = (index_a - 1), (index_b - 1)

如何用PYTHON解决二进制求和问题

10、while index_a >= 0 or index_b >= 0: if index_a >= 0: x = int(a[index忧溲枷茫_a]) else: x = 0 if index_b >= 0: y = int(b[index_b]) else: y = 0 if (x + y + carry) % 2 == 0: sum = sum + "0" else: sum = sum + "1" carry = (x + y + carry) // 2 if carry == 1: sum = sum + "1" 每一位相加只有4种结果,0,1,2,3。其中1和3除以2的时候余数为1。 index_a, index_b = (index_a - 1), (index_b - 1)

如何用PYTHON解决二进制求和问题

11、a 屏顿幂垂= "1010"b = "1011"index_a = len(a) - 1in颊俄岿髭dex_b = len(b) - 1carry = 0sum = ""while index_a >= 0 or index_b >= 0: if index_a >= 0: x = int(a[index_a]) else: x = 0 if index_b >= 0: y = int(b[index_b]) else: y = 0 if (x + y + carry) % 2 == 0: sum = "0" + sum else: sum = "1" + sum carry = (x + y + carry) // 2 index_a, index_b = (index_a - 1), (index_b - 1) if carry == 1: sum = "1" + sum注意"0"在sum前面。然后if要和while对齐,因为如果最后还要进位的话,判断一下。print(sum)

如何用PYTHON解决二进制求和问题
  • C语言如何使用条件运算符的嵌套
  • 【抽象代数】二元对称多项式
  • dev-c++如何设置调试
  • 军训时女生来月经怎么办
  • 手机中国大学MOOC如何修改个人信息资料?
  • 热门搜索
    有关春天的手抄报 我们的节日手抄报 地震手抄报 安全教育手抄报一等奖 新春手抄报 安全知识手抄报图片 新学期手抄报 小学二年级手抄报 地球日手抄报简单字少 防溺水手抄报简单漂亮