Conversion decimal>hexadecimal

Fermé
Aka - Modifié le 6 nov. 2021 à 00:02
 Utilisateur anonyme - 6 nov. 2021 à 21:07
Bonjour, j'aurai besoin d'aide pour un petit programme de conversion en python decimal > hexadecimal sauf que je n'ai pas le droit d'utiliser le changehex
et je bloque a cause d'une erreur que je n'arrive pas a régler.

def entier_to_hexa (N):
    chaine_hexa = ""
    while N>0:
        q = N // 16
        r = N % 16
        if r == 10:
            chaine_hexa = "A" + chaine_hexa
        if r == 11:
            chaine_hexa = "B" + chaine_hexa
        if r == 12:
            chaine_hexa = "C" + chaine_hexa
        if r == 13:
            chaine_hexa = "D" + chaine_hexa
        if r == 14:
            chaine_hexa = "E" + chaine_hexa
        if r == 15:
            chaine_hexa = "F" + chaine_hexa
        else :
            chaine_hexa = r + chaine_hexa
        N=q
    return
N = 2021
meh = chaine_hexa
print (meh)


message d'erreur : Traceback (most recent call last):
File "D:\Entier_to_hexa.py", line 23, in <module>
meh = chaine_hexa
NameError: name 'chaine_hexa' is not defined

EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici : ICI

Merci d'y penser dans tes prochains messages.
A voir également:

2 réponses

Utilisateur anonyme
6 nov. 2021 à 00:25
Bonsoir

la variable existe dans la fonction, pas dans le programme prinicipal
1
Utilisateur anonyme
6 nov. 2021 à 21:07
Je suppose que si ton professeur t’as donné cet exercice c’est qu’il t’as déjà appris comme transmettre le résultat d’une fonction.
Donc je dirais, regarde dans ton cours.
0