efrei/algebre-non-lineaire/euclide_etendu.py

23 lines
338 B
Python

#!/usr/bin/env python3
"""Algorithme d'Euclide étendu
Calcule le PGCD de deux nombres et trouve les coefficients de Bezout.
"""
import sys
assert len(sys.argv) == 3
a = int(sys.argv[1])
b = int(sys.argv[2])
print("r u v q")
# Initialisation
r = [a, b]
u = [1, 0]
v = [0, 1]
q = [False, a // b]
# Séquence
r.append(r[-2] % r[-1])