Función Python math.lcm()

Python math 模块Módulo math de Python


En teoría de números,mínimo común múltiplo(Mínimo Común Múltiplo, abreviado como LCM) es un concepto muy importante. Se utiliza para encontrar el menor de los múltiplos comunes de dos o más enteros.

math.lcm()Es una función introducida en Python 3.9, específicamente diseñada para calcular elmínimo común múltiplo (LCM)。

Definición del término: lcmEs la abreviatura de "Least Common Multiple", que significa "mínimo común múltiplo".


Sintaxis básica y parámetros

Formato de sintaxis

import math

math.lcm(*integers)

Descripción de parámetros

  • Parámetro: *integers- Un número variable de enteros (al menos uno)
  • Descripción: Los enteros de los que se calculará el mínimo común múltiplo.

Valor de retorno

  • Devuelve el mínimo común múltiplo de todos los enteros de entrada
  • Si solo se pasa un entero, devuelve el valor absoluto de ese entero
  • Si se pasa 0, devuelve 0

Ejemplos

Ejemplo 1: Uso básico - Calcular el LCM de dos números

Ejemplo

import math

print("LCM de 4 y 6:", math.lcm(4, 6))     # 12
print("LCM de 5 y 7:", math.lcm(5, 7))     # 35
print("LCM de 12 y 18:", math.lcm(12, 18)) # 36

# Verificar la fórmula
a, b = 4, 6
print(f"\n"Verificación: LCM({a}, {b}) = {a} * {b} / GCD({a}, {b}) = {a*b//math.gcd(a,b)}")

Resultado de la ejecución:

4 和 6 的 LCM: 12
5 和 7 的 LCM: 35
12 和 18 的 LCM: 36

验证: LCM(4, 6) = 4 * 6 / GCD(4, 6) = 12

Ejemplo 2: Calcular el LCM de varios números

Ejemplo

import math

print("LCM de 3, 4 y 5:", math.lcm(3, 4, 5))    # 60
print("LCM de 6, 8 y 12:", math.lcm(6, 8, 12))  # 24
print("LCM de 2, 3, 4 y 5:", math.lcm(2, 3, 4, 5)) # 60

Resultado de la ejecución:

3, 4, 5 的 LCM: 60
6, 8, 12 的 LCM: 24
2, 3, 4, 5 的 LCM: 60

Ejemplo 3: Manejo de valores especiales

Ejemplo

import math

print("Entero único 7:", math.lcm(7))
print("LCM de 0 y 5:", math.lcm(0, 5))
print("LCM de -4 y 6:", math.lcm(-4, 6))

Resultado de la ejecución:

单个整数 7: 7
0 和 5 的 LCM: 0
-4 和 6 的 LCM: 12

Ejemplo 4: Aplicación práctica - Denominador común de fracciones

Ejemplo

import math

# Suma de fracciones: 1/4 + 1/6
denom1, denom2 = 4, 6
common_denom = math.lcm(denom1, denom2)
numer1 = 1 * (common_denom // denom1)
numer2 = 1 * (common_denom // denom2)
result = numer1 + numer2
print(f"1/{denom1} + 1/{denom2} = {numer1}/{common_denom} + {numer2}/{common_denom} = {result}/{common_denom}")

Resultado de la ejecución:

1/4 + 1/6 = 3/12 + 2/12 = 5/12

Ejemplo 5: Aplicación práctica - Sincronización de períodos

Ejemplo

import math

# Los períodos de los tres semáforos son 30, 45 y 60 segundos, respectivamente
light_cycles = [30, 45, 60]
sync_interval = math.lcm(*light_cycles)
print(f"Períodos de los semáforos: {light_cycles}")
print(f"Intervalo de tiempo para que se pongan verdes simultáneamente: {sync_interval} segundos")

Resultado de la ejecución:

信号灯周期: [30, 45, 60]
同时变绿的时间间隔: 180 秒

Relación con GCD

Fórmula: LCM(a, b) = a × b / GCD(a, b)

Ejemplo

import math

for a, b in [(4, 6), (8, 12), (15, 20)]:
    lcm_val = math.lcm(a, b)
    gcd_val = math.gcd(a, b)
    print(f"LCM({a}, {b}) = {lcm_val}, GCD({a}, {b}) = {gcd_val}, Verificación: {lcm_val * gcd_val} == {a*b} -> {lcm_val*gcd_val == a*b}")

Resultado de la ejecución:

LCM(4, 6) = 12, GCD(4, 6) = 2, 验证: 24 == 24 -> True
LCM(8, 12) = 24, GCD(8, 12) = 4, 验证: 96 == 96 -> True
LCM(15, 20) = 60, GCD(15, 20) = 5, 验证: 300 == 300 -> True

Notas

  • math.lcm()Solo está disponible en Python 3.9+
  • Los números negativos se calculan con su valor absoluto
  • El LCM de 0 y cualquier número es 0

Python math 模块Módulo math de Python

Otras extensiones