"""
exercice 2.11
Suite de Syracuse  """
def successeur(n):
    if n%2==0 : return n//2
    return n*3+1
    
def successeurs1(n):
    """ se contente d'afficher la liste des successeurs du nombre de départ (question 1)"""
    while n!=1:
        print(n,end=" - ")
        n=successeur(n)
    print("1\n")

def successeurs2(n):
    """ afficher la liste des successeurs du nombre de départ
        la longueur de la suite et la valeur maximum (question 2)"""
    long,maxi=0,n
    while n!=1:
        print(n,end=" - ")
        n=successeur(n)
        long+=1
        if n>maxi : maxi=n
    print("1")
    print("longueur de la suite=",long)
    print("maximum de la suite=",maxi,'\n')

successeurs1(15)
successeurs2(15)
successeurs2(127) #long=46, maxi=4372

