weixin_44301239
2021-09-17 09:49
采纳率: 66.7%
浏览 57
已结题

Python,将一个十进制的数,转换成2进制数,判断其最高位是0,还是1

Python,将一个十进制的数,例如:13785,
转换成16位2进制数:0011 0101 1101 1001,
判断其最高位是0,还是1,用代码表示。

  • 写回答
  • 好问题 提建议
  • 追加酬金
  • 关注问题
  • 邀请回答

4条回答 默认 最新

  • 幸福丶如此 2021-09-17 10:25
    最佳回答

    python中有自带的bin函数,可以将十进制的数字转化为二进制

    
    num = 13785
    # num = int( input("请输入要将十进制转化为二进制的正整数: ")  )
    print( bin(num) )
    temp = bin(num).replace('0b','')
    
    ##判断是否是4位一个,如果不是将在前面补 0
    if len(temp) % 4:
        print(4 - len(temp) % 4)
        res = '0' * (4 - len(temp) % 4) + temp
    else:
        res = temp
    
    print('{} 转化为二进制的结果为 {}'.format( str(num) , res ))
    if int( res[0] ):
        print('转化二进制后最高位是 1')
    else:
        print('转化二进制后最高位是 0')
    
    
    
    评论
    解决 无用
    打赏 举报
查看更多回答(3条)

相关推荐 更多相似问题