Для нахождения наибольшего общего делителя (НОД) в компьютерной программе можно использовать алгоритм Евклида: 3
- Большее число разделить на меньшее. 3
- Если делится без остатка, то меньшее число и есть НОД (следует выйти из цикла). 3
- Если есть остаток, то большее число заменить на остаток от деления и перейти к пункту 1. 3
Ещё один вариант — использовать рекурсию: 4
- Принять два числа, которые сохранить в отдельные переменные. 4
- Передать оба числа в рекурсивную функцию в качестве аргумента. 4
- В качестве базового условия рекурсии принять равенство нулю второго числа (второго аргумента функции). 4 В этом случае результатом работы функции будет первое число (первый аргумент функции). 4
- В противном случае снова рекурсивно вызвать эту функцию и в качестве первого аргумента передать ей второй аргумент из предыдущего вызова функции, а в качестве второго — остаток от деления первого аргумента на второй аргумент. 4
- Когда функция завершит свою работу, её результатом будет первый аргумент из последнего вызова этой функции. 4 Он и будет наибольшим общим делителем (НОД). 4
- Вывести результат на экран. 4
Также в модуле math языка программирования Python есть функция gcd, вычисляющая наибольший общий делитель двух чисел. 3