AD

¿Ya dominas lo básico? Un curso estructurado de Swift es la vía rápida para dar el salto.

Ver cursos de Swift en Udemy

Enlace de afiliado. No te cuesta nada extra.

🐦Lecciones de Swift
Lección 48 / 68

Calcular el MCD y el MCM (algoritmo de Euclides)

En esta lección obtendrás el máximo común divisor y el mínimo común múltiplo de dos números.

El algoritmo de Euclides se apoya en una observación de hace más de dos mil años: el MCD de dos números es el mismo que el del menor y el resto de dividirlos. Se escribe en una línea recursiva. El MCM sale de dividir el producto entre el MCD.

El código de ejemplo muestra ambos.

Cuidado con el MCM: a * b puede desbordar antes de dividir, y en Swift el desbordamiento detiene el programa. Con números grandes, la forma segura es dividir primero: a / gcd(a, b) * b.

Ese comportamiento ante el desbordamiento es una decisión de diseño de Swift, no un descuido. En C el número da la vuelta en silencio y produce un resultado absurdo que se propaga; aquí el programa se detiene en el punto exacto. Si de verdad quieres el comportamiento cíclico, existen operadores específicos: &+, &*.

Donde aparecen de verdad estas operaciones es al simplificar fracciones, al sincronizar tareas con periodos distintos y en criptografía.

📖 Código de referencia
✍️ Tu código
Escribe tu código y pulsa «Ejecutar»

🧪 Este sitio no puede compilar ni ejecutar Swift directamente, así que comprueba al instante si lo que escribiste coincide con el código de referencia (la corrección ocurre por completo en tu navegador; no se envía nada a ningún servidor).

🔗 El mismo tema en otros lenguajes

Mira cómo se escribe lo mismo en otro lenguaje.

Espacio publicitario (banner)
Espacio publicitario (en el artículo)