Yuuu渔舟唱晚 发表于 2020-9-8 23:31:36

第17讲作业 写一个十进制转化为二进制的函数

本帖最后由 Yuuu渔舟唱晚 于 2020-9-9 00:23 编辑

按照题目要求写了一个名叫 bins 的函数
def bins(x):
    b = ''
    while True:
      c = x % 2
      a = str(c)
      b = b + a
      x = x // 2
      if x // 2== 0:
            break
    return int(b[::-1])



但结果却是这样的

>>> bins(0)
0
>>> bins(1)
1
>>> bins(2)
0
>>> bins(3)
1
>>> bins(4)
0
>>> bins(159)
11111

我检查了几遍没发现问题在哪,然后自己也在纸上跑了一遍没有问题{:10_266:}


实在检查不出来就来求助大佬了{:10_254:}


kylin121380 发表于 2020-9-8 23:36:00

本帖最后由 kylin121380 于 2020-9-8 23:42 编辑

def bins(x):
    b = ''
    while True:
      c = x % 2
      a = str(c)
      b = b + a
      x = x // 2
      if x == 0:
            break
    return int(b[::-1])

Yuuu渔舟唱晚 发表于 2020-9-9 00:13:44

本帖最后由 Yuuu渔舟唱晚 于 2020-9-9 00:55 编辑


Yuuu渔舟唱晚 发表于 2020-9-9 00:21:29

本帖最后由 Yuuu渔舟唱晚 于 2020-9-9 00:56 编辑

每到那一步就自己略过,真是蠢{:10_266:}
页: [1]
查看完整版本: 第17讲作业 写一个十进制转化为二进制的函数