Calculate the GCD of two inetgers efficiently can be done with the Euclidean algorithm. (Here, we don’t show that
this algorithm is valid)
Description of the algorithm:
Given two positive integers a and b, we check first if b is equal to 0. If it’s the case, then the GCD is equal to a.
Otherwise, we calculate r, the remainder after dividing a by b. Then, we replace a by b, and b by r, and we restart
this method.
For example, let’s calculate the GCD of 2160 and 888 with the Euclidean algorithm:
a | b | r |
2160 | 888 | 384 |
888 | 384 | 120 |
384 | 120 | 24 |
120 | 24 | 0 |
24 | 0 | |
Hence, the GCD of 2160 and 888 is 24. There’s no largest integer that divide both numbers. (In fact 2160 = 24 × 90 and
888 = 24 × 37)
GCD is the last remainder not equal to 0.