От камешков до кода: История и практика алгоритма Евклида + Реализация на языке Python
Алгоритм Евклида – один из древнейших и наиболее известных алгоритмов в математике, позволяющий находить наибольший общий делитель (НОД) двух целых чисел. Этот алгоритм не только имеет богатую историю, но и остается актуальным в современной математике и информатике. Давайте разберемся, что такое алгоритм Евклида, как он работает, и как его можно реализовать на языке Python. Евклид – древнегреческий математик, живший примерно в III веке до н.э. Он известен как «отец геометрии» благодаря своему фундаментальному...
285 читали · 4 года назад
Задача 527. Алгоритм Евклида
А теперь к настоящим алгоритмам, а не использованию уже написанных в стандартной библиотеке. Читаем условие задачи: Алгоритм Евклида - это, действительно, эффективный способ вычисления наибольшего общего делителя двух чисел. Но та версия, которую изучил Дима из условия задачи является неоптимальной. Давайте посмотрим на примере. Если даны два числа 1000000 и 12, то шаг 4 будет выполняться очень много раз (83333), после чего a будет равно 4, а b - 12 (затем, они, конечно, поменяются местами). На примере мы можем заметить, что 1000000 = 83333 * 12 + 4, или в общем виде a = k * b + r...
157 читали · 3 года назад
Совершенствуем алгоритм Евклида по нахождению наибольшего общего делителя
Здравствуйте, дорогие читатели! Сегодня мы разберем, как находить НОД чисел, используя усовершенствованную версию алгоритма Евклида. На самом деле, процесс нахождения НОД будет очень простым и довольно быстрым. В одной из своих предыдущих статей я разбирала классический алгоритм Евклида и пообещала рассмотреть его реализацию не через разность, а через деление. Это более короткий путь. Но, не знаю насколько он проще. Вы находитесь на канале Trifler, где я ежедневно разбираю интересные математические задачи, а также рассуждаю на некоторые околоматематические темы...