Informatique

Question

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.​

1 Réponse

  • 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.

Autres questions