Information

Author(s) Vincent Branders, Pierre Dupont
Deadline 07/09/2024 16:33:48
Submission limit No limitation

Sign in

[TP.04] Dans le sens inverse

Vous avez vu comment transformer un nombre de sa représentation décimale à sa représentation binaire. Il faut maintenant faire l'inverse : déterminer la représentation décimale d'un nombre à partir de sa représentation binaire. Vous aurez donc accès aux bits dans l’ordre de poids décroissant.


Question 1: [Validation] Un exemple simple

Indiquez la valeur de x à la fin des instructions suivantes :

from Queue import Queue

file = Queue()
for bit in [1, 0, 1, 0, 1, 0]:
    file.enqueue(bit)

x = bin_to_dec(file)
Question 2: Conversion d'un nombre binaire en décimal

Vous êtes chargés d'implémenter la fonction suivante en Python. Pour préparer votre code, vous pouvez télécharger le fichier bin_to_dec.py qui contient la signature de la fonction et quelques exemples de tests.

Note: Lorsqu'il vous est demandé d'implémenter une fonction, vous êtes invités à ne remplir que le corps de la fonction à implémenter.

Note: Vous pouvez, dans le corps de la fonction, faire appel aux fonctions et modules importés dans le template fourni.

def bin_to_dec(n):
    """
    pre: `n` est une file renvoyant la représentation binaire
        d un nombre en commençant par le bit de poids fort
    post: renvoie la valeur de `n` dans sa forme décimale
        `n` est vide
    """