print("***** Algorithme d'Euclide *****\n")
 a0 = int(input("Premier nombre entier : a = "))
 b0 = int(input("Second nombre entier : b = "))
 a = a0
 b = b0
 r = a%b # initialisation
 while (r != 0) : # algorithme d'Euclide
 a = b
 b = r
 r = a%b
 # affichage des résultats
 print("PGCD(", a0, ", ", b0, ") = ", b)
 print("PPCM(", a0, ", ", b0, ") = ", a0*b0//b)
euclide()
On peut simplifier la boucle centrale :
 while b: # s'exécute tant que b n'est pas 0
 a, b = b, a % b # affectation de liste à liste
 return a
Notez que le module NumPy propose l'instruction codice_169 :
import numpy
print(numpy.gcd(a, b))
Tours de Hanoï.
Écrire un programme Python qui demande le nombre "n" de plateaux et affiche les manipulations nécessaires pour déplacer la pile d'un emplacement à un autre. Le programme utilisera l'algorithme récursif. 
"""nom : hanoi.py
auteur : User:cdang
date de création : 2019-02-19
dates de modification : 
version de Python : 3
module requis : aucun
Objectif : résout le problème des tours de Hanoï
Entrées
 trois chaînes de caractères (nom des piliers)
Sorties
 une chaîne de caractères (liste des opérations)
def hanoi(a, b, c, n):
 """Résout le problème des tours de Hanoï de manière récursive
 But : déplace la pile de n disques du piler a au pilier b
 Entrées
 a, b c : chaînes de 1 caractère, référence des emplacements ;
 n : entier, nombre de disques sur l'emplacement a
 Sorties
 operations : chaînes de caractères décrivant les opérations