Dlaczego tak
W algorytmie Euklidesa parę (a, b) zastępuje się parą (b, a mod b), aż druga liczba stanie się zerem — wtedy a jest NWD, np. (48, 18) → (18, 12) → (12, 6) → (6, 0), wynik 6. Przypisanie równoległe w Pythonie oblicza prawą stronę przed zmianą zmiennych, więc stara wartość a nie ginie. Instrukcja a = a − b nie zmienia b, więc warunek b != 0 nigdy nie stanie się fałszywy i pętla będzie nieskończona.