Obtenez les meilleures solutions à toutes vos questions sur Laurentvidal.fr, la plateforme de Q&R de confiance. Connectez-vous avec des professionnels sur notre plateforme pour recevoir des réponses précises à vos questions de manière rapide et efficace. Notre plateforme offre une expérience continue pour trouver des réponses fiables grâce à un réseau de professionnels expérimentés.

Bonjour quelqu'un peut m'aider svp j'ai 2 programmes a faire en Python les voici :

une fonction binaire(n) qui renvoie l’écriture en binaire du nombre n décimal (= écrit en base 10)

une fonction decimal(b) qui renvoie le nombre en base 10 converti depuis le nombre b écrit en binaire.

merci d'avance.​


Sagot :

Réponse :

def decimalToBinary(decimalNumber):

       binaryNumber = []

       events = []

       while decimalNumber != 0:

           binaryNumber.append(decimalNumber % 2)

           decimalNumber = int(decimalNumber / 2)

           events.append((decimalNumber, "/2"))

       events.append(tuple(reversed(binaryNumber)))

       return events

def binaryToDecimal(binaryNumberDefault):

       binaryNumber = tuple(int(c) for c in reversed(str(binaryNumberDefault)))

       decimalNumber = 0

       events = []

       for i in range(0, len(binaryNumber)):

           if binaryNumber[i] != 0:

               decimalNumber += 2**i

               events.append("ans + 2**" + str(i) + "=" + str(decimalNumber))

       events.append(str(binaryNumberDefault) + "=" + str(decimalNumber))

       return events

Explications :

Chacune des deux fonctions retourne un tableau contenant les étapes de conversion, le dernier élément du tableau est le résultat de conversion.

Nous apprécions votre visite. Nous espérons que les réponses trouvées vous ont été bénéfiques. N'hésitez pas à revenir pour plus d'informations. Merci de votre visite. Nous sommes dédiés à vous aider à trouver les informations dont vous avez besoin, quand vous en avez besoin. Vos questions sont importantes pour nous. Revenez régulièrement sur Laurentvidal.fr pour obtenir plus de réponses.