Алгоритм Евклида используется для нахождения наибольшего общего делителя (НОД) пары целых чисел. younglinux.info
Последовательность шагов алгоритма: dzen.ru
- На первом шаге нужно разделить большее число на меньшее. dzen.ru Если деление удалось, то есть остаток оказался равен нулю, то меньшее число и будет НОД этих двух чисел. dzen.ru В случае ненулевого остатка необходимо продолжить выполнение алгоритма. dzen.ru
- На втором шаге нужно разделить меньшее из двух данных чисел (первый делитель) на полученный в первом делении остаток. dzen.ru Если при этом делении получится нулевой остаток, то НОД двух данных чисел равен остатку от деления на первом шаге или, что то же, делителю на втором шаге. dzen.ru В случае ненулевого остатка следует продолжить выполнение алгоритма. dzen.ru
- На третьем шаге нужно разделить предыдущий делитель (остаток от предпоследнего деления) на остаток, полученный на предыдущем шаге. dzen.ru В случае получения нулевого остатка НОД будет равен остатку, полученному на предыдущем шаге или, что тоже, последнему делителю. dzen.ru В случае получения ненулевого остатка следует повторить действия на этом шаге вплоть до получения нулевого остатка — в этом случае последний ненулевой остаток или, что то же, последний делитель и будет НОД. dzen.ru
Алгоритм Евклида тем эффективнее, чем больше числа, НОД которых следует найти. dzen.ru