MCD y mcm en Python
El algoritmo de Euclides, con 2300 años encima, sigue siendo el MCD estándar.
def mcd(a, b):
while b:
a, b = b, a % b
return a
def mcm(a, b):
return abs(a * b) // mcd(a, b) if a and b else 0
Cómo funciona
- Reemplaza repetidamente el par
(a, b)por(b, a % b). - Cuando el resto llega a cero,
aes el MCD. - El mcm divide el producto entre el MCD, cuidándose del cero.
Palabras clave y builtins usados aquí
absdefelseifreturnwhile
El intento, en números
- Líneas
- 7
- Caracteres a escribir
- 113
- Tokens
- 51
- Ritmo de tres estrellas
- 90 tpm
Al ritmo de tres estrellas de 90 tokens por minuto, este intento toma unos 34 segundos.
Paso 6 de 7 en Control de flujo; paso 21 de 72 en Fundamentos del lenguaje.