Convertisseur d’unité en python

Projets

Plus besoin de convertir des unités de tête ou avec un tableau. Ce programme vous fait le travail à votre place.

Ce projet est un programme réalisé avec python dans le but de convertir un nombre avec une unité de départ dans une unité finale. Il permet de convertir des volumes, des masses, des longueurs et des aires. Ce programme a été développé à l’aide d’omega et est téléchargeable sur la calculatrice Numworks grâce aux liens hypertextes en bas de cet article.

Explication de notre programme

• Tout d’abord nous avons dû assimilés les unités avec les puissances de 10 qui correspondaient.

expo0 = [10**-3, 10**-2, 10**-1, 10**0, 10**1, 10**2, 10**3, 10**-3, 10**0, 10**3, 10**6, 10**9]
unit0 = ["mL", "cL", "dL", "L", "daL", "hL", "kL", "cm3", "dm3", "m3", "dam3", "hm3", "km3"]
 
expo1 =[10**-3, 10**-2, 10**-1, 10**0, 10**1, 10**2, 10**3, 10**5, 10**6]
unit1 =["mg", "cg", "dg", "g", "dag", "hg", "kg", "q", "t"]
 
expo2 = [10**-9,10**-6,10**-3,10**-2,10**-1,10**0,10**1,10**2,10**3]
unit2 = ["nm","micrometre","mm","cm","dm","m","dam","hm","km",]
 
expo3 = [10**-6, 10**-4, 10**-2, 10**0, 10**2, 10**4, 10**6]
unit3 = ["mm2", "cm2", "dm2", "m2", "dam2", "hm2", "km2"]

• On a également créer une petite fonction utile.

Une fonction utile

def clear(nb):
    print("\n"*nb)

Cette fonction permet de sauter le nombre de ligne que l’on veut en écrivant ce nombre entre les parenthèses.

Exemple

clear(2)

• Ensuite, nous avons créé les fonctions permettant de convertir les unités.

Fonction volume, masse, longueur et aire

def volume():
    clear(6)
    print("Vous avez choisi les volumes.")
    clear(2)
    nbr = float(input("Quel nombre voulez vous\nconvertir : "))
    clear(1)
    print("liste des unites : \n0 = mL\t1 = cL\t 2 = dL\n3 = L \t4 = daL\t5 = hL\n6 = kL\t7 = cm3\t8 = dm3\n9 = m3\t10 = dam3  11 = hm3\n12 = km3")
    clear(1)
    unit_d0 = int(input("Quel est l'unite de depart\nde votre nombre : "))
    clear(0)
    unit_a0 = int(input("Quel est l'unite final\nde votre nombre : "))
    convert0 = nbr * expo0[unit_d0] / expo0[unit_a0]
    clear(1)
    print("Le resultat est :\n%.3e"%convert0, unit0[unit_a0])
    clear(0)
    go_menu = float(input("Entrez un nombre pour\nretourner au menu : "))
    if go_menu == 1:
        return menu()
    else:
        return menu()

Explication de la fonction volume ci-dessus

Cette fonction nous demande dans un premier temps, quel nombre nous voulons convertir.

Et dans un second temps, l’unité de départ et l’unité finale du nombre.

Cette fonction nous affiche ensuite le résultat et nous demande d’écrire un nombre au hasard pour retourner au menu (que l’on verra plus tard dans cet article).

def masse():
    clear(6)
    print("Vous avez choisi les masses.")
    clear(2)
    nbr = float(input("Quel nombre voulez vous\nconvertir : "))
    clear(1)
    print("liste des unites : \n0 = mg\t1 = cg\t2 = dg\n3 = g     4 = dag   5 = hg\n6 = kg\t7 = q\t 8 = t")
    clear(1)
    unit_d1 = int(input("Quel est l'unite de depart\nde votre nombre : "))
    clear(1)
    unit_a1 = int(input("Quel est l'unite final\nde votre nombre : "))
    convert1 = nbr * expo1[unit_d1] / expo1[unit_a1]
    clear(1)
    print("Le resultat est :\n%.3e"%convert1, unit1[unit_a1])
    clear(0)
    go_menu = float(input("Entrez un nombre pour\nretourner au menu : "))
    if go_menu == 1:
        return menu()
    else:
        return menu()

La fonction masse ci-dessus

Cette fonction est la même que la fonction volume, mais elle ne convertit pas des volumes mais des masses.

def longueur():
    clear(6)
    print("Vous avez choisi les longueurs.")
    clear(2)
    nbr = float(input("Quel nombre voulez vous\nconvertir : "))
    clear(1)
    print("liste des unites : \n0 = nm\t1 = micrometre\n2 = mm\t3 = cm\t4 = dm\n5 = m     6 = dam   7 = hm\n8 = km")
    clear(1)
    unit_d2 = int(input("Quel est l'unite de depart\nde votre nombre : "))
    clear(0)
    unit_a2 = int(input("Quel est l'unite final\nde votre nombre : "))
    convert2 = nbr * expo2[unit_d2] / expo2[unit_a2]
    clear(1)
    print("Le resultat est :\n%.3e"%convert2, unit2[unit_a2])
    clear(0)
    go_menu = float(input("Entrez un nombre pour\nretourner au menu : "))
    if go_menu == 1:
        return menu()
    else:
        return menu()

La fonction longueur ci-dessus

Cette fonction est la même que la fonction volume et la fonction masse, mais elle ne convertit ni des volumes ni des masses, mais des longueurs.

def aire():
    clear(6)
    print("Vous avez choisi l'aire.")
    clear(2)
    nbr = float(input("Quel nombre voulez vous\nconvertir : "))
    clear(1)
    print("liste des unites : \n0 = mm2\t1 = cm2\t2 = dm2\n3 = m2     4 = dam2   5 = hm2\n6 = km2")
    clear(1)
    unit_d3 = int(input("Quel est l'unite de depart\nde votre nombre : "))
    clear(1)
    unit_a3 = int(input("Quel est l'unite final\nde votre nombre : "))
    convert3 = nbr * expo3[unit_d3] / expo3[unit_a3]
    clear(1)
    print("Le resultat est :\n%.3e"%convert3, unit3[unit_a3])
    clear(0)
    go_menu = float(input("Entrez un nombre pour\nretourner au menu : "))
    if go_menu == 1:
        return menu()
    else:
        return menu()

La fonction aire ci-dessus

Cette fonction est la même que la fonction volume, la fonction masse et la fonction longueur, mais elle ne convertit ni des volumes ni des masses ni des longueurs, mais des aires.

• Et pour finir nous avons créé une fonction menu.

def menu():
    clear(3)
    print("        _______________")
    print("       |               |")
    print("       | CONVERTISSEUR |")
    print("       |    D'UNITE !  |")
    print("       |_______________|")
    print("\n1 - Le volume")
    print("2 - La masse")
    print("3 - La longueur")
    print("4 - L'aire\n")
    choix = int(input("Indiquer votre choix : " ))
 
    if choix == 1:
        volume()
 
    elif choix == 2:
        masse()
 
    elif choix == 3:
        longueur()
 
    elif choix == 4:
        aire()
 
    else:
        return menu()

Explication de la fonction menu ci-dessus

Cette fonction nous propose 4 choix qui sont le volume, la masse, la longueur et l’aire. Ces 4 choix sont respectivement associés aux chiffres 1, 2, 3 et 4 donc si on rentre le chiffre 1, le programme va exécuter la fonction volume. Et si on rentre un nombre différent de 1, 2, 3 et 4 la fonction exécutera encore le menu.

Conclusion

Plus besoin de convertir mentalement ou avec un tableau, ce programme vous fait le travail à votre place ! Vous pouvez le télécharger les liens ci-dessous.

Le programme

ServeurRemarquesLiens hypertextes
Workshop de NumWorksPermet un téléchargement rapide sur la calculatriceconvertisseur d’unité