🔢 Как посчитать НОК двух чисел в Питоне: простой способ!
import math
def find_lcm(a, b):
gcd = math.gcd(a, b)
lcm = (a * b) // gcd
return lcm
# Пример использования функции
num1 = 12
num2 = 18
lcm = find_lcm(num1, num2)
print(f"Наименьшее общее кратное чисел {num1} и {num2} равно {lcm}")
Надеюсь, это поможет вам вычислить НОК двух чисел в Python. Если у вас возникнут другие вопросы, не стесняйтесь задавать!
Детальный ответ
Как посчитать нок двух чисел в Питоне
НОК (Найменьшее Общее Кратное) двух чисел - это наименьшее положительное целое число, кратное обоим входным числам. В Питоне мы можем вычислить НОК, следуя нескольким подходам. Давайте рассмотрим несколько вариантов поочередно.
Метод 1: Используя цикл while
Первый метод, который мы можем использовать для вычисления НОК двух чисел, - это использование цикла while. Мы будем увеличивать переменные до тех пор, пока не найдем наименьшее целое число, которое делится на оба входных числа.
def наименьшееОбщееКратное(a, b):
# Находим большее число из двух
if a > b:
большее_число = a
else:
большее_число = b
while(True):
if(большее_число % a == 0 and большее_число % b == 0):
НОК = большее_число
break
большее_число += 1
return НОК
число1 = 24
число2 = 36
нок = наименьшееОбщееКратное(число1, число2)
print(f"НОК чисел {число1} и {число2} = {нок}")
В этом примере у нас есть функция наименьшееОбщееКратное
, которая принимает два аргумента - a
и b
. Мы находим большее число из двух и затем используем цикл while
, чтобы увеличивать это число до тех пор, пока не найдем НОК. Если число делится как на a
, так и на b
, мы прерываем цикл и возвращаем НОК.
Метод 2: Использование встроенной функции math.gcd
Кроме того, мы можем использовать встроенную функцию gcd
из модуля math
для вычисления НОД (Наибольший Общий Делитель) двух чисел. Затем, используя формулу НОК = (a * b) / НОД
, мы можем вычислить НОК.
import math
def наименьшееОбщееКратное(a, b):
наибольший_общий_делитель = math.gcd(a, b)
НОК = (a * b) / наибольший_общий_делитель
return int(НОК)
число1 = 24
число2 = 36
нок = наименьшееОбщееКратное(число1, число2)
print(f"НОК чисел {число1} и {число2} = {нок}")
В этом примере мы импортируем модуль math
и используем функцию gcd
для нахождения НОД. Затем мы используем формулу НОК = (a * b) / НОД
для вычисления НОК.
Метод 3: Использование рекурсии
Третий подход к вычислению НОК - использование рекурсии. Мы будем вызывать функцию рекурсивно до тех пор, пока не найдем НОК.
def наименьшееОбщееКратное(a, b):
if a > b:
большее_число = a
меньшее_число = b
else:
большее_число = b
меньшее_число = a
if (большее_число % меньшее_число == 0):
return большее_число
else:
# Вызываем функцию рекурсивно с аргументами (большее_число, большее_число % меньшее_число)
return наименьшееОбщееКратное(большее_число, большее_число % меньшее_число)
число1 = 24
число2 = 36
нок = наименьшееОбщееКратное(число1, число2)
print(f"НОК чисел {число1} и {число2} = {нок}")
В этом примере у нас есть функция наименьшееОбщееКратное
, которая принимает два аргумента - a
и b
. Если остаток от деления большее_число
на меньшее_число
равен нулю, мы возвращаем большее_число
. В противном случае мы вызываем функцию рекурсивно с аргументами (большее_число, большее_число % меньшее_число)
для поиска НОК.
Теперь мы рассмотрели несколько способов вычисления НОК двух чисел в Питоне. Вы можете выбрать любой из этих подходов в зависимости от ваших предпочтений и требований. Удачи в программировании!