Laurentvidal.fr simplifie votre recherche de solutions aux questions quotidiennes et complexes avec l'aide de notre communauté. Posez vos questions et recevez des réponses détaillées de professionnels ayant une vaste expérience dans divers domaines. Découvrez une mine de connaissances de professionnels dans différentes disciplines sur notre plateforme conviviale de questions-réponses.
Sagot :
Réponse :
def bin_dec(binaire): #binaire est donc une chaine de caractère
c = 0
chiffre_decimal = 0
for k in range(0, len(binaire)): #on parcours tout les caractères de la chaine
poids_binaire = 2 **C # ton poid pour chaque bit
c += 1
poids_ = poids_binaire * int(binaire[k]) #le poids de ton bits * 1 ou 0 (valeur de ton bits)
chiffre_decimal += poids_
return chiffre_decimal
def dec_bin(decimal):
listebinaire = []
while decimal > 1:
res_div = int(decimal / 2) # on calcule le prochain terme à diviser
reste = decimal - 2*res_div # on calcule le reste de la division d'eucli
listebinaire.append(reste) # on ajoute à la findela liste le reste (0 ou 1)
listebinaire.reversed() # pour retourner ta liste
return listebinaire # j'ai utilisé une liste mais tu peux le faire avec une chaine de caractère, fais attention de bien lire à l'envers, on part du dernier reste trouvé et on remonte
def choix(base):
choisir = str(input('que voulez vous convertir ? Decimal : D ou Binaire : B'))
if choisir == 'D':
res = dec_bin(base)
if choisir == 'B':
res = bin_dec(base)
return res
Explications :
Tu feras attention, quelqu'un d'autre a demandé exactement la même chose donc j'imagine qu'il est dans ta classe, évitez de rendre le même algo, vous allez vous faire prendre ; )
Nous apprécions votre temps. Revenez quand vous voulez pour les informations les plus récentes et des réponses à vos questions. Nous espérons que cela vous a été utile. Revenez quand vous voulez pour obtenir des réponses plus précises et des informations à jour. Merci d'utiliser Laurentvidal.fr. Revenez pour obtenir plus de connaissances de nos experts.