Subrutinas y Funciones

INTEC - Recursos de Aprendizajes y Medios
16 Dec 202018:38

Summary

TLDREn este video, Fernando Irujo explica el algoritmo de Euclides para calcular el máximo común divisor (MCD) de dos números y cómo extenderlo a tres números. Inicialmente, se presenta la solución con pseudo-código, pero se destaca que este enfoque es ineficiente para más de tres números. Luego, se propone una versión optimizada utilizando una función llamada `ms`, que calcula el MCD de dos números y puede ser reutilizada para más de dos números. Finalmente, se ofrece una implementación en Python y se explica la diferencia entre subrutinas y funciones, resaltando la importancia de la reutilización de código.

Takeaways

  • 😀 El algoritmo de Euclides se utiliza para calcular el máximo común divisor (MCD) de dos números enteros.
  • 😀 El algoritmo de Euclides funciona calculando el residuo de la división de los dos números y repitiendo el proceso con el divisor y el residuo.
  • 😀 Para calcular el MCD de tres números, primero se calcula el MCD de los dos primeros números y luego se calcula el MCD de este resultado con el tercer número.
  • 😀 El uso del pseudo-código ayuda a visualizar claramente la estructura y lógica de los algoritmos antes de implementarlos en un lenguaje de programación.
  • 😀 En lugar de escribir múltiples veces el mismo fragmento de código, el pseudo-código puede simplificarse utilizando funciones para hacer el proceso más modular.
  • 😀 El algoritmo extendido para tres números se basa en la recursión, donde el resultado de calcular el MCD de dos números se utiliza como entrada para el siguiente cálculo.
  • 😀 El pseudocódigo muestra cómo reemplazar valores en la función para obtener el MCD de tres números de manera eficiente.
  • 😀 En Python, el algoritmo de Euclides puede implementarse usando funciones, donde los valores son pasados como parámetros a las funciones para calcular el MCD.
  • 😀 El uso de la palabra clave 'def' en Python permite definir funciones que se pueden reutilizar para resolver problemas de manera más estructurada.
  • 😀 La función 'input()' en Python se utiliza para leer los valores de entrada del usuario y 'print()' para mostrar los resultados.
  • 😀 Una subrutina o función en programación es un bloque de código reutilizable que puede ser invocado desde otro lugar del programa para realizar una tarea específica.

Q & A

  • ¿Cuál es el propósito principal del algoritmo de Euclides?

    -El propósito del algoritmo de Euclides es encontrar el máximo común divisor (MCD) de dos números enteros, utilizando una serie de divisiones sucesivas hasta obtener el residuo cero.

  • ¿Cómo se adapta el algoritmo de Euclides para hallar el MCD de tres números?

    -Para hallar el MCD de tres números, primero se calcula el MCD de los dos primeros números, luego se utiliza ese resultado para calcular el MCD con el tercer número.

  • ¿Qué complicación surge al intentar hallar el MCD de más de tres números usando el algoritmo de Euclides tradicional?

    -La complicación es que, al agregar más números, sería necesario repetir varias veces el algoritmo, lo que requiere copiar y pegar el código del algoritmo múltiples veces para cada par de números.

  • ¿Cómo se puede simplificar el proceso de hallar el MCD de múltiples números?

    -Se puede simplificar mediante la creación de una rutina o función que invoque el algoritmo de Euclides de manera modular, pasando los números como parámetros y utilizando resultados intermedios de manera eficiente.

  • ¿Qué es una subrutina en programación y qué características tiene?

    -Una subrutina es un segmento de código que realiza una tarea específica y puede ser invocado desde otro punto del programa. Tiene un nombre, puede tener parámetros opcionales y, si lo requiere, puede retornar uno o más valores.

  • ¿Qué diferencia hay entre una subrutina y una función en programación?

    -La diferencia principal es que una subrutina no necesariamente retorna valores, mientras que una función siempre retorna un valor o conjunto de valores, como el resultado de una operación.

  • En el código de Python proporcionado, ¿cómo se define la función para calcular el MCD?

    -La función se define con la palabra clave 'def', seguida del nombre de la función y los parámetros. En este caso, se define una función llamada 'ms' que toma dos parámetros, m y n, y retorna el MCD de esos dos números.

  • ¿Qué ocurre dentro de la función 'ms' cuando se ejecuta el algoritmo de Euclides en Python?

    -Dentro de la función 'ms', se calculan sucesivamente los residuos de las divisiones entre m y n hasta que el residuo es cero. El valor de n cuando esto sucede es el MCD, que se retorna al finalizar.

  • ¿Por qué es útil el uso de parámetros en las funciones dentro de este algoritmo?

    -Los parámetros permiten que la función sea reutilizable y flexible, ya que se pueden pasar diferentes valores para calcular el MCD de cualquier par de números sin necesidad de modificar el cuerpo del código.

  • ¿Qué es el operador '%' en Python y cómo se usa en este algoritmo?

    -El operador '%' es el operador módulo en Python, que calcula el residuo de la división de dos números. En el algoritmo, se utiliza para calcular el residuo de la división de m entre n durante el proceso de hallar el MCD.

Outlines

plate

Esta sección está disponible solo para usuarios con suscripción. Por favor, mejora tu plan para acceder a esta parte.

Mejorar ahora

Mindmap

plate

Esta sección está disponible solo para usuarios con suscripción. Por favor, mejora tu plan para acceder a esta parte.

Mejorar ahora

Keywords

plate

Esta sección está disponible solo para usuarios con suscripción. Por favor, mejora tu plan para acceder a esta parte.

Mejorar ahora

Highlights

plate

Esta sección está disponible solo para usuarios con suscripción. Por favor, mejora tu plan para acceder a esta parte.

Mejorar ahora

Transcripts

plate

Esta sección está disponible solo para usuarios con suscripción. Por favor, mejora tu plan para acceder a esta parte.

Mejorar ahora
Rate This

5.0 / 5 (0 votes)

Etiquetas Relacionadas
Algoritmo EuclidesMáximo Común DivisorPythonPseudocódigoMatemáticasProgramaciónFuncionesGCDEducaciónTecnologíaCálculo