Esta entrada del blog pertenece a una serie:
- Números primos en Python
- Factorización en Python
- Máximo común divisor (MCD) en Python
- Mínimo común múltiplo (mcm) en Python
Veamos la denominación en inglés y en español.
- gcd = greatest common divisor = máximo común divisor = MCD
- lcm = least common multiple = mínimo común múltiplo = mcm
Concepto y resolución manual
El mínimo común múltiplo de dos o más números es el menor de los múltiplos comunes a todos ellos.
Ejemplo
El mcm de 12 y 22 es igual a 132. En la imagen se pueden ver los múltiplos de 12 en la columna C y los múltiplos de 22 en la columna D. En color naranja se ven los múltiplos comunes, siendo el menor de todos ellos el número 132.
La resolución manual tiene los siguientes pasos.
- Descomponemos en factores primos ambos números. En nuestro ejemplo:
- 12 = 22 × 3 × 1
- 22 = 2 × 11 × 1
- El mcm se forma con el producto de los números comunes y no comunes a la máxima potencia. En nuestro ejemplo:
- mcm(12,22) = 22 × 3 × 11 = 132
Usos del mínimo común múltiplo
Caso 1
Caso 2
Método 1: calculando previamente el Máximo común divisor
from math import gcd
x=300
y=33880
MCD=gcd(x,y)
mcm=int(x*y/gcd(x,y))
print("El mínimo común múltiplo entre {} y {} es {}\n".format(x,y,mcm))
print('''Si los dos números son a y b se puede comprobar que:\n
\ta × b = MCD × mcm''')
print('\t{} × {} = {} × {}'.format(x,y,MCD,mcm))
Método 2: buscando los múltiplos comunes
def mcm(a,b):
multiplos_a=[]
multiplos_b=[]
for t in range(1,a*b+1):
multiplos_a.append(t*a)
multiplos_b.append(t*b)
if t*a in multiplos_b:
return t*a
elif t*b in multiplos_a:
return t*b
return a*b
x=12
y=22
print('El mínimo común múltiplo de {} y {} es {}.'.format(x,y,mcm(x,y)))