Bonsoir,
Je cherche à programmer une fonction python prenant un entier n et dont le résultat est
une chaîne de caractères composée de la représentation binaire de n suivie d'un tiret puis de son
bit de parité. Le bit de parité est le nombre de '1' modulo 2 dans la représentation binaire de n.
parite(2014)
'11111011110-1'
Voilà où j'en suis:
def parite(n):
res=''
while n>0:
res=str(n%2)+res
n=n//2
for i in range (len(res)):
b=0
if res[i]==1:
b=b+1
return res+'-'+str(b)
print(parite(2014))
et voici ce que ça m'affiche:
11111011110-0
Pourriez-vous m'aider à modifier mon programme afin qu'il affiche ceci: 11111011110-1. Ca fait 4h que je suis dessus, c'est un exercice juste pour m'entraîner d'annale d'un ancien contrôle(pas corrigé)
En vous remerciant, bien à vous.