Definición y usos

Reuniendo los fragmentos de código de las secciones anteriores, el programa completo sería algo como esto:

Este programa contiene dos definiciones de funciones: muestra_estribillo y
repite_estribillo. Las definiciones de funciones son ejecutadas exactamente igual que cualquier otra sentencia, pero su resultado consiste en crear objetos del tipo función. Las sentencias dentro de cada función son ejecutadas solamente cuando se llama a esa función, y la definición de una función no genera ninguna
salida.

Como ya te imaginarás, es necesario crear una función antes de que se pueda
ejecutar. En otras palabras, la definición de la función debe ser ejecutada antes de que la función se llame por primera vez.

  • Desplaza la última línea del programa anterior hacia arriba, de modo que la llamada a la función aparezca antes que las definiciones. Ejecuta el programa y observa qué mensaje de error obtienes.
  • Desplaza la llamada de la función de nuevo hacia el final, y coloca la definición de muestra_estribillo después de la definición de repite_estribillo. ¿Qué ocurre cuando haces funcionar ese programa?