Skip to content

十进制转二进制

难度:⭐

1. 题目描述

题目描述

十进制正整数转为二进制,不使用内置的 bin() 函数

2. 关键点

  • 除2取余

3. 代码实现

点击显示代码
python
def tobin(num):
    """十进制转二进制
    除2取余法,即每次将整数部分除以2,等到余数和商,而商继续除以2,等到余数和商,
    这个步骤一直持续下去,直到商为0为止,最后读数时候,从最后一个余数读起,一直到最前面的一个余数。
    """
    bins = []
    while num:
        num, x = divmod(num, 2)
        bins.append(str(x))
    bins.reverse()
    return ''.join(bins)


for i in range(10):
    bins = tobin(i+1)
    print(f'十进制{i+1},二进制{bins}')

4. 运行示例

txt
十进制1,二进制1
十进制2,二进制10
十进制3,二进制11
十进制4,二进制100
十进制5,二进制101
十进制6,二进制110
十进制7,二进制111
十进制8,二进制1000
十进制9,二进制1001
十进制10,二进制1010

5. 进阶思考

  1. 十进制转八进制