Représente un entier naturel sous forme d’une série de bits ou d’octets, suivant le cas.
def binaire(n, formatage=True): """ donne une liste de bits exprimant n """ b = [] while n > 1: b = [n % 2] + b n //= 2 b = [n % 2] + b if formatage: t = len(b) % 8 if t != 0: b = [0] * (8 - t) + b u = "".join([str(c) for c in b]) v = "" for k in range(len(u)//8): v += u[(8*k):(8*k+4)] + u[(8*k+4):(8*(k+1))] + '.' v = v[:-1] return v.split('.') return b print(binaire(24)) # [1, 1, 0, 0, 0] ou "1 1000" print(binaire(255)) print(binaire(256)) print(binaire(256, False)) print(binaire(4095)) # print(binaire(65536)) # print(binaire(65536*256-1)) # print(binaire(2**32 - 1)) x = int(input("nombre (en base 10) ? ")) print(binaire(x))