def grand(n) : chiffre_unite = n % 10 chiffre_dizaine = (n % 100) // 10 chiffre_centaine = n // 100 maxi = max(chiffre_centaine,chiffre_dizaine,chiffre_unite) mini = min(chiffre_centaine,chiffre_dizaine,chiffre_unite) moyen = (chiffre_centaine+chiffre_dizaine+chiffre_unite)-(maxi+mini) s = maxi*100 + moyen*10 + mini return s def petit(n) : chiffre_unite = n % 10 chiffre_dizaine = (n % 100) // 10 chiffre_centaine = n // 100 maxi = max(chiffre_centaine,chiffre_dizaine,chiffre_unite) mini = min(chiffre_centaine,chiffre_dizaine,chiffre_unite) moyen = (chiffre_centaine+chiffre_dizaine+chiffre_unite)-(maxi+mini) s = mini*100 + moyen*10 + maxi return s def kaprekar(n) : u = n liste_valeurs = [u] while u != 495 : u = grand(u) - petit(u) liste_valeurs.append(u) return liste_valeurs