
def calcAfficher(somme, valeur, typec):
    """  Calcul et affichage de la coupure
 
     :param somme: somme à décomposer
     :param valeur: valeur de la coupure
     :param typec: type de la coupure
     :return: le tuple (nombre de coupures, reste)
    """
    nc = somme // valeur
    rt = somme % valeur
    intitule = ("billet" if typec == "b" else "piece")
    if nc != 0:
        print("==> ", nc, " ", intitule, "(s) de ", valeur, " euros, reste ", rt, sep="")
    return (nc, rt)


def PGMonnaie():
    somme = int(input("Somme a decomposer? "))
    
    b100, r100 = calcAfficher(somme, 100, "b")
    b50, r50 = calcAfficher(r100, 50, "b")
    b10, r10 = calcAfficher(r50, 10, "b")
    p2, r2 = calcAfficher(r10, 2, "p")
    p1, r1 = calcAfficher(r2, 1, "p")
    
    rs = 100 * b100 + 50 * b50 + 10 * b10 + 2 * p2 + 1 * p1
    print("==> ", rs, sep="")

PGMonnaie()