Методы Python для поиска наименьшего общего кратного (LCM) двух чисел

Чтобы найти наименьшее общее кратное (НОК) двух чисел в Python, вы можете использовать несколько методов. Вот несколько примеров:

Метод 1: использование цикла

def find_lcm(num1, num2):
    max_num = max(num1, num2)
    while True:
        if max_num % num1 == 0 and max_num % num2 == 0:
            lcm = max_num
            break
        max_num += 1
    return lcm
result = find_lcm(12, 18)
print(result)  # Output: 36

Метод 2. Использование математического модуля

import math
def find_lcm(num1, num2):
    lcm = (num1 * num2) // math.gcd(num1, num2)
    return lcm
result = find_lcm(12, 18)
print(result)  # Output: 36

Метод 3: использование рекурсивной функции

def find_lcm(num1, num2):
    if num1 > num2:
        greater = num1
    else:
        greater = num2
    def lcm_recursive(x, y):
        if x == 0 or y == 0:
            return 0
        elif x % greater == 0 and y % greater == 0:
            return greater
        else:
            return lcm_recursive(x + greater, y)
    lcm = lcm_recursive(num1, num2)
    return lcm
result = find_lcm(12, 18)
print(result)  # Output: 36