Наименьшее общее кратное Python (LCM)
Найдите наименьшее общее кратное (LCM) двух чисел, используя их отношение HCF в Python.
Обзор
Наименьшее общее кратное (НОК) двух целых чисел — это наименьшее положительное целое число, которое делится на оба числа.
Между HCF (НОД) и НОК существует фундаментальная связь: `LCM(a, b) = abs(a * b) // НОД(a, b)`. Мы можем рассчитать LCM мгновенно, как только станет известен НОД.
Этот расчет выполняется намного быстрее и требует меньше памяти, чем повторение кратного большего числа.
Код и вывод выполнения
Калькулятор LCM с использованием сокращения на основе НОД.
def find_gcd(a, b):
while b != 0:
a, b = b, a % b
return a
def find_lcm(a, b):
if a == 0 or b == 0:
return 0
return abs(a * b) // find_gcd(a, b)
print("LCM of 12 and 18 is:", find_lcm(12, 18))
print("LCM of 5 and 7 is: ", find_lcm(5, 7))LCM of 12 and 18 is: 36
LCM of 5 and 7 is: 35Пошаговая реализация
- Согласование периодических фоновых заданий и запусков cron
- Масштабирование знаменателей сложения и вычитания дробей
- Планирование обнаружения конфликтов
Часто задаваемые вопросы
Зачем делить на НОД перед умножением чисел?
Первое деление предотвращает потенциальное целочисленное переполнение в языках с фиксированными целочисленными размерами. Хотя Python обрабатывает сколь угодно большие целые числа, это по-прежнему является лучшей практикой.
Связанные темы
Вычислите наибольший общий делитель (HCF) или наибольший общий делитель (НОД) двух чисел, используя алгоритм Евклида.
Скрипт простого калькулятора PythonСоздайте базовый калькулятор на Python. Узнайте, как сопоставлять математические операторы, использовать потоки выполнения пользователей и обрабатывать логику собственными средствами.