一般来说python里共有十进制,二进制,八进制和十六进制,我们一般使用的都是十进制,二进制是机械语言,它在计算机和IT系统方面有着广泛运用,计算机通常使用它来处理、读取和写入数据。因此,掌握十进制和二进制的转换,有利于我们读懂机械语言,更好的理解计算机。
问题
每个非负整数 N 都有其二进制表示。例如, 5 可以被表示为二进制 "101",11 可以用二进制 "1011" 表示,依此类推。注意,除 N = 0 外,任何二进制表示中都不含前导零。二进制的反码表示是将每个 1 改为 0 且每个 0 变为 1。例如,二进制数 "101" 的二进制反码为 "010"。给定十进制数 N,返回其二进制表示的反码所对应的十进制整数。
示列
输入: 5
输出: 2
方法
-
.我们首先使用bin函数使10进制的数变为2进制的数或者使用短除法使10进制数变为2进制数
-
.使用for……in遍历2进制数的每一个字符,使‘1’变为0,使‘0’变为1,再将其依次存入一个新的列表
-
.使用for……in遍历新列表里的数,使用2进制转10进制的数学算法,使2进制反码变成10进制数
4实验结果与讨论
通过实验、实践等证明提出的方法是有效的,是能够解决开头提出的问题。
代码清单
n = int(input())
m = bin(n)
print(m)
list_1 = []