Programme python convertisseur

Robzs -  
jee pee Messages postés 31869 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour je doit créer un fonction qui prend en argument un hexadécimal pour le convertir en décimal sans utiliser de fonction déjà existante juste des boucles et des opérations de calculs.
J ai réussi une fonction qui convertit un décimal en hexa mais la je bloque...
Merci

2 réponses

  1. jee pee Messages postés 31869 Date d'inscription   Statut Modérateur Dernière intervention   9 974
     
    Bonjour,

    Les méthodes et solution peuvent être nombreuses.

    Tu pourrais :
    - faire une boucle sur chaque caractère de la chaine entrée
    - vérifier que c'est bien un caractère hexa
    - convertir le caractère de 0 ... F en sa valeur décimale (d) 0 ... 16
    - suivant la position (p) du caractère, en partant de la droite et commençant à zéro, calculer la valeur du caractère décimal en puissance de 16 ==> v = d * 16^p
    - ajouter cette valeur dans un cumul

    exemple h'AF2' = (10 * 16^2) + (15 * 16^1) + (2 * 16^0) = 2802

    Cdlt
    1
  2. Robzs
     
    Merci je crois que J ai compris mais quand je définis ma fonction
    def f(b) :
    .. ..
    Comment faire pour que b soit un hexadécimal (ex:F43)
    0
    1. jee pee Messages postés 31869 Date d'inscription   Statut Modérateur Dernière intervention   9 974
       
      b reste une chaine de caractères, on ne le traite pas en variable héxa, on prend une chaine qui contient un nombre exprimé en caractères hexa
      0