1.4 Funciones que invocan a otras funciones
El
concepto de reutilización es muy importante. El alumno debe saber que las
funciones no sólo sirven para dividir un problema en trozos más pequeños sino
que también deben servir para no tener que repetir código. Por eso es
importante insistir en que las funciones NO terminan con un printf sino con un
return. He observado que de forma natural, los alumnos tienden a terminar las
funciones con un printf para mostrar el resultado alcanzado, sin entender que
esa función es inútil en ese caso.
Cuando
los alumnos venían de Bachillerato sabiendo lo que era un número combinatorio,
la reutilización de la función factorial era un clásico.
1.4.1
Función tal que dados dos números enteros n y m devuelve el número de combinaciones
de n tomados de m en m, reutilizando la función 1.3.2
1.4.2
Función tal que dadas las coordenadas de un triángulo en el plano devuelve su
perímetro. Este es un ejemplo claro de reutilización de la función 1.2.2. Este
problema se podrá generalizar a cualquier polígono y en cualquier dimensión
cuando se introduzca el concepto de array.
1.4.3 Otro ejemplo de reutilización es si quisiéramos devolver la diferencia en segundos entre dos instantes de tiempo del mismo día. Para ello reutilizando la función 1.2.3 escribiríamos:
El alumno debe entender que si las funciones 1.2.3, 1.2.4 y 1.3.2 en vez de tener un return hicieran un printf con el resultado, no podrían ser reutilizadas en otra función y su utilidad sería muy limitada.
No hay comentarios:
Publicar un comentario