Algorithme de conversion d’un nombre décimal en binaire Python

Dans ce tutoriel, nous allons voire des programmes pour convertir un nombre décimal en un nombre binaire équivalent. Nous verrons deux programmes Python, le premier programme effectue la conversion à l’aide d’une fonction définie par l’utilisateur et dans le deuxième programme, nous utilisons une fonction intégrée qui s’appel bin() pour la conversion décimale vers binaire.
 
 

Conversion décimale en binaire en utilisant une fonction récursive

Dans ce programme, nous avons défini une fonction conversion(). Cette fonction prend le nombre décimal en tant que paramètre d’entrée et le convertit en un nombre binaire équivalent.

def conversion(n):
    if n > 1:
        conversion(n // 2)
    print(n % 2, end='')


# Demande à l'utilisateur d'entrer un nombre
nbr = int(input("Entrez un nombre decimal: "))

conversion(nbr)

Cela produit le résultat suivant:

Entrez un nombre decimal: 9
1001

 

Conversion décimale en binaire en utilisant la fonction bin()

Dans ce programme, nous utilisons une fonction intégrée qui s’appel bin() pour convertir le nombre décimal en binaire.

# Demande à l'utilisateur d'entrer un nombre
nbr = int(input("Entrez un nombre decimal: "))

# Afficher le nombre binaire équivalent
print("Nombre binaire equivalent: ", bin(nbr))

Cela produit le résultat suivant:

Entrez un nombre decimal: 9
Nombre binaire equivalent:  0b1001

 
Exercice Python CorrigéExercice Python Corrigé – Partie 1Avec des exercices corrigés en Python, vous pratiquerez divers concepts du langage Python. Vous commencerez par des exercices Python de base à des exercices plus…Lire plus

6 réflexions sur “Algorithme de conversion d’un nombre décimal en binaire Python

  • mars 27, 2020 à 2:35
    Permalien

    Bonjour,
    Il y a une erreur avec la fonction récursive. C’est plutôt « if n >= 1 » ou alors « if n>0 »

    Cordialement.

    Répondre
    • mars 27, 2020 à 3:37
      Permalien

      En fait, le nombre 1 en décimal égale au nombre 1 en binaire, c’est pour cela on vérifie si le nombre entré par l’utilisateur est strictement supérieur à 1.

      Répondre
      • mars 28, 2020 à 3:19
        Permalien

        Pourtant avec n = 9 le résultat est 001 car on s’arrête avant que n soit nul.

        Répondre
  • octobre 14, 2020 à 4:35
    Permalien

    Bonjour !
    Merci pour ce tutoriel. Dans le premier programme (qui marche très bien), que signifie end='' ?

    Répondre
    • octobre 15, 2020 à 7:45
      Permalien

      La fonction print() insère une nouvelle ligne ‘\n’ à la fin, par défaut. Dans Python 2, il peut être supprimé en mettant ‘,’ à la fin. Dans Python 3, (end ='') ajoute un espace au lieu d’une nouvelle ligne. Vous pouvez terminer une instruction avec n’importe quel caractère / chaîne à l’aide de ce paramètre (end).

      Répondre

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *