# -*- coding: utf-8 -*-
#----------------------
print()
print(" calcul d'Altitude ou Hauteur de Distance ou Longueur")
print(" ----------------------------------------------------")
print()
#-----------------------------choisir l'option
def question() :
    print()
    print(" choisissez le chiffre de l'une des options suivantes")
    print()
    print(" kilomètre...........=  1  ¦  millimètre..........=  7")
    print(" hectomètre..........=  2  ¦  ------------------------")
    print(" décamètre...........=  3  ¦  mille nautique......=  8")
    print(" mètres..............=  4  ¦  pied................=  9")
    print(" décimètre...........=  5  ¦  pouce...............= 10")
    print(" centimètre..........=  6  ¦  ligne...............= 11")
    print()
    
    return
#-----------------------------choix
def choisir() :
    global choix
    
    choix = input("      Entrez le numéro de l'option choisie : ")
    print()
    try :
        choix = int(choix)
    except :
        print("Vous devez taper uniquement un chiffre, rien d'autre")
        choisir() # tourniquet pour chiffre non conforme
    
    if choix < 0 :
        print("          Erreur ce chiffre est négatif !")
        choisir()  # tourniquet pour chiffre négatif
        print()
        
    if choix == 0 :
        print("       Erreur se chiffre est trop petit !")
        choisir()  # tourniquet pour chiffre trop petit
        print()
    
    if choix > 11 :
        print("       Erreur se chiffre est trop grand !")    
        choisir()  # tourniquet pour chiffre trop grand
        print()
    
    return
#-----------------------------le nombre à calculer
def nmbr() :
    global nombre
    
    nombre = input("         Entrer le nombre à calculer : ")
    print()
    try :
        nombre = float(nombre)
    except :
        print("Vous devez taper uniquement un nombre, rien d'autre")
        nmbr() # tourniquet pour chiffre non conforme
    
    if nombre < 0.0 :
        print("        Erreur se chiffre est négatif !")
        nmbr()  # tourniquet pour chiffre trop petit
        print()
    
    return
#-----------------------------calcul
def calc() :
    global choix
    global nombre
    global kilomètre
    global hectomètre
    global décamètre
    global mètre
    global décimètre
    global centimètre
    global millimètre
    global mille
    global pied
    global pouce
    global ligne
#-----------------------------1 - kilomètre
    if choix == 1 :
        kilomètre = nombre
        hectomètre = kilomètre * 10
        décamètre = hectomètre * 10
        mètre = kilomètre * 1000
        décimètre = mètre * 10
        centimètre = mètre * 100
        millimètre = centimètre * 10
        mille = kilomètre * 0.539957
        pied = mètre * 3.2808398950131
        pouce = mètre * 39.37007874
        ligne = mètre * 472.440944882
        return
#-----------------------------2 - hectomètre
    if choix == 2 :
        hectomètre = nombre
        kilomètre = hectomètre / 10
        décamètre = hectomètre * 10
        mètre = kilomètre * 1000
        décimètre = mètre * 10
        centimètre = mètre * 100
        millimètre = centimètre * 10
        mille = kilomètre * 0.539957
        pied = mètre * 3.2808398950131
        pouce = mètre * 39.37007874
        ligne = mètre * 472.440944882
        return
#-----------------------------3 - décamètre
    if choix == 3 :
        décamètre = nombre
        kilomètre = décamètre / 100
        hectomètre = décamètre / 10
        mètre = kilomètre * 1000
        décimètre = mètre * 10
        centimètre = mètre * 100
        millimètre = centimètre * 10
        mille = kilomètre * 0.539957
        pied = mètre * 3.2808398950131
        pouce = mètre * 39.37007874
        ligne = mètre * 472.440944882
        return
#-----------------------------4 - mètres
    if choix == 4 :
        mètre = nombre
        kilomètre = mètre / 1000
        hectomètre = kilomètre * 10
        décamètre = hectomètre * 10
        décimètre = mètre * 10
        centimètre = mètre * 100
        millimètre = centimètre * 10
        mille = kilomètre * 0.539957
        pied = mètre * 3.2808398950131
        pouce = mètre * 39.37007874
        ligne = mètre * 472.440944882
        return
#-----------------------------5 - décimètre
    if choix == 5 :
        décimètre = nombre
        mètre = décimètre / 0.1
        kilomètre = mètre / 1000
        hectomètre = kilomètre * 10
        décamètre = hectomètre * 10
        centimètre = mètre * 100
        millimètre = centimètre * 10
        mille = kilomètre * 0.539957
        pied = mètre * 3.2808398950131
        pouce = mètre * 39.37007874
        ligne = mètre * 472.440944882
        return
#-----------------------------6 - centimètre
    if choix == 6 :
        centimètre = nombre
        décimètre = centimètre * 10
        mètre = centimètre / 100
        kilomètre = mètre / 1000
        hectomètre = kilomètre * 10
        décamètre = hectomètre * 10
        millimètre = centimètre / 10
        mille = kilomètre * 0.539957
        pied = mètre * 3.2808398950131
        pouce = mètre * 39.37007874
        ligne = mètre * 472.440944882
        return
#-----------------------------7 - millimètre
    if choix == 7 :
        millimètre = nombre
        centimètre = millimètre / 10
        décimètre = centimètre * 10
        mètre = centimètre / 100
        kilomètre = mètre / 1000
        hectomètre = kilomètre * 10
        décamètre = hectomètre * 10
        mille = kilomètre * 0.539957
        pied = mètre * 3.2808398950131
        pouce = mètre * 39.37007874
        ligne = mètre * 472.440944882
        return
#-----------------------------8 - mille nautique
    if choix == 8 :
        mille = nombre
        kilomètre = mille / 0.539957
        hectomètre = kilomètre * 10
        décamètre = hectomètre * 10
        mètre = kilomètre * 1000
        décimètre = mètre * 10
        centimètre = mètre * 100
        millimètre = centimètre * 10
        pied = mètre * 3.2808398950131
        pouce = mètre * 39.37007874
        ligne = mètre * 472.440944882
        return
#-----------------------------9 - pied
    if choix == 9 :
        pied = nombre
        mètre = pied * 0.3048
        kilomètre = mètre / 1000
        hectomètre = kilomètre * 10
        décamètre = hectomètre * 10
        décimètre = mètre * 10
        centimètre = mètre * 100
        millimètre = centimètre * 10
        mille = kilomètre * 0.539957
        pouce = mètre * 39.37007874
        ligne = mètre * 472.440944882
        return
#-----------------------------10 - pouce
    if choix == 10 :
        pouce = nombre
        mètre = pouce / 39.37007874
        kilomètre = mètre / 1000
        hectomètre = kilomètre * 10
        décamètre = hectomètre * 10
        décimètre = mètre * 10
        centimètre = mètre * 100
        millimètre = centimètre * 10
        mille = kilomètre * 0.539957
        pied = mètre * 3.2808398950131
        ligne = mètre * 472.440944882
        return
#-----------------------------11 - ligne
    if choix == 11 :
        ligne = nombre
        centimètre = ligne / 4.72440944882
        mètre = centimètre / 100
        décimètre = mètre * 10
        kilomètre = mètre / 1000
        hectomètre = kilomètre * 10
        décamètre = hectomètre * 10
        millimètre = centimètre * 10
        mille = kilomètre * 0.539957
        pied = mètre * 3.2808398950131
        pouce = mètre * 39.37007874
        return
#-----------------------------arrondir
def arrondi() :
    global kilomètre
    global hectomètre
    global décamètre
    global mètre
    global décimètre
    global centimètre
    global millimètre
    global mille
    global pied
    global pouce
    global ligne
    
    kilomètre = round(kilomètre, 6)
    hectomètre = round(hectomètre, 6)
    décamètre = round(décamètre, 5)
    mètre = round(mètre, 5)
    décimètre = round(décimètre, 4)
    centimètre = round(centimètre, 4)
    millimètre = round(millimètre, 3)
    mille = round(mille, 6)
    pied = round(pied, 5)
    pouce = round(pouce, 4)
    ligne = round(ligne, 3)
    return
#=================================
# Début de la lecture du programme
#-----------------------------déclaration des variables globales
global choix
global nombre
global kilomètre
global hectomètre
global décamètre
global mètre
global décimètre
global centimètre
global millimètre
global mille
global pied
global pouce
global ligne
#-----------------------------initialisation des variables
choix = 0
nombre = 0.0
kilomètre = 0.0
hectomètre = 0.0
décamètre = 0.0
mètre = 0.0
décimètre = 0.0
centimètre = 0.0
millimètre = 0.0
mille = 0.0
pied = 0.0
pouce = 0.0
ligne = 0.0
#-----------------------------[main]
question()
choisir()
nmbr()
calc()
arrondi()
#-----------------------------impression
print()
print(" kilomètre........= ", kilomètre)
print(" hectomètre.......= ", hectomètre)
print(" décamètre........= ", décamètre)
print(" mètre............= ", mètre)
print(" décimètre........= ", décimètre)
print(" centimètre.......= ", centimètre)
print(" millimètre.......= ", millimètre)
print(" ------------------")
print(" mille nautique...= ", mille)
print(" pied.............= ", pied)
print(" pouce............= ", pouce)
print(" ligne............= ", ligne)
#-----------------------------Sortie
print()
print("----------------------")
bye = (input ("Entrer pour Sortir...!"))
