Bienvenido a la segunda parte de la colección de Algoritmos de Ciencias de la Computación. En este desafío seguiremos trabajando en la escritura de funciones recursivas mediante el Algoritmo de Euclides. El "Algoritmo de Euclides" es un método para encontrar el máximo común divisor (MCD) de dos números. Fue descrito originalmente por el matemático griego Euclides.
Algoritmo
Para simplificar, me referiré al primer número como "a", al segundo como "b" y al resto como "r". El algoritmo puede dividirse en cuatro pasos:
- Asegúrate de que "a" >= "b". Si "a" < "b", intercámbialos.
- Encuentra el resto. Divide "a" entre "b" y establece "r" como el resto.
- ¿"r" es cero? Si es así, termina la función y devuelve "b" (el segundo número).
- Establece "a" = "b" y "b" = "r" y vuelve a comenzar el algoritmo.
Instrucciones
Crea una función recursiva que devuelva el MCD entre dos números positivos usando el Algoritmo de Euclides.
Ejemplos
euclidean(8, 6) ➞ 2
euclidean(25, 5) ➞ 5
euclidean(49, 14) ➞ 7
Notas
- Recuerda que para encontrar el resto de dos números debes usar el operador módulo
%. - Ambos números serán positivos y ninguno será null.
- Varios de los desafíos que se abordarán en esta colección sobre algoritmos pueden resolverse sin recursión y sin implementar los algoritmos descritos en cada desafío. Les pido encarecidamente a quienes resuelvan estos desafíos que lo hagan como se pretende. No comprender los conceptos enseñados será un obstáculo para los desafíos posteriores y no ayudará a nadie a desarrollar sus habilidades como programador.
- Si estás atascado, consulta la pestaña Resources, la pestaña Comments o, si estás realmente atascado, usa la pestaña Solutions para desbloquear las respuestas.