Réponse :
Bonsoir,
Explications :
La fonction traite tout chaine binaire et pas uniquement celles de 8 charactères.
A toi de modifier
def binaire( n,m):
rep=''
p=n
while p > 0:
rep=str(p%2)+rep
p=int(p/2)
# print (rep,p)
rep=(repstr('0',m)+rep)[-m:]
return rep
def decimal(string):
rep=0
p=string
for i in range(0,len(p)):
rep=rep*2
if p[i]=='1':
rep=rep+1
print (p[i],'rep=',rep)
return rep
def repstr(string, length):
return (string * length)[0:length]
nb=18
Bin=binaire(nb,6)
Dec=decimal(Bin)
print (nb,'=',Bin,Dec)