﻿#============================================================
# Conversion d'un entier en base 10 vers la base B
#============================================================

def conv10b():

    # titre
    print("****************************************************")
    print("*                                                  *")
    print("* Conversion d'un entier en base 10 vers la base B *")
    print("*                                                  *")
    print("****************************************************")
    print()

    # Saisie de la base de conversion
    base_ok = False
    b = int(input("Saisir la base B pour la conversion : "))
    if 2<=b<=10 or b == 16 :
        print("Base B = ",b)
        base_ok=True
    else :
        print("Base B = ",b," non gérée !")

#   Conversion
    if base_ok == True :

#       Saisie de l'entier à convertir
        nb_10 = int(input("Saisir l'entier en base 10  à convertir : "))
        print("Entier en base 10 à convertir : ",nb_10)

#       Initialisations
        q = 1
        r = 0
        d = nb_10
        nb_b = []
        c = " "

#       boucle de conversion
        while q != 0 :
            q=d//b
            r=d%b
#           gestion des restes
            if r>=10 :
#               gestion des restes en base 16
                if r==10 :
                    c = "A"
                elif r==11 :
                    c = "B"
                elif r==12 :
                    c = "C"
                elif r==13 :
                    c = "D"
                elif r==14 :
                    c = "E"
                elif r==15 :
                    c = "F"
            else :
#               restes inférieurs ou égaux à 9
                c = r
            nb_b.append(c)
            print("d = ",d," q = ",q," c = ",c)
            d = q

#       Résultat final
#        print("nb_b =",nb_b)
        nb_b.reverse()
        print("Entier converti dans la base B =",b," : ",nb_b)
        print()

    print("Fin programme")

    return None
