CURRICULUM Anterior: Tema 3: Introducción a
Superior: Programa Detallado de Teoría
Siguiente: Tema 5: Vectores y

Contenidos

Tema 4: Subprogramas, Procedimientos y Funciones

Objetivos:

Contenidos:

1.
Introducción a los Subprogramas
2.
Funciones
3.
Procedimientos
4.
Variables globales (vs) variables locales
5.
Trazas de los procedimientos y funciones
6.
Funciones en C

Bibliografía:

ANTONAKOS97
Cap 2
GOTTFRIED97
Cap 7
JOYANES96
Cap 5
KERNIGHAN91
Cap 4
LLANOS98
Cap 5

Tiempo estimado:

3 horas de teoría y 3 de prácticas

Desarrollo:

Al comenzar el tema, se debe recordar el concepto de módulo para destacar la necesidad de encapsular código y datos bajo un mismo idenficador y establecer un mecanismo coherente para proporcionar y obtener valores de ese módulo.

El mecanismo de paso de valores a un módulo hace una abstracción de los valores concretos que se proporcionan al módulo en cada llamada, los parámetros actuales, mediante la declaración de variables que servirán para referenciar esos valores de manera única, los parámetros formales. De esta forma es posible diseñar un módulo de manera independiente de los valores que le serán proporcionados en la entrada. Además, ocultamos los datos e instrucciones que maneja el subprograma de manera que mejoramos la estructura del programa y facilitamos la abstracción a la hora de programar.

Se distinguen dos construcciones distintas para la definición de subprogramas, las funciones y los procedimientos.

Se definen las funciones dejando clara su utilidad. Se detalla que para declarar una función hemos de especificar el nombre de la misma, el tipo del dato devuelto y los nombres y tipos de sus argumentos formales. Después se explica el uso de las mismas: cómo se pasan los argumentos actuales y cómo se puede usar el valor devuelto. También se estudia la estructura interna de la función y se explica la sentencia de devolución de datos. Para distinguirlas de los procedimientos hemos de dejar claro que las funciones devuelven un único valor y que el valor de los parámetros no cambia.

Se definen los procedimientos especificando su utilidad. Se detalla la especificación de los mismos distinguiendo entre parámetros por valor y por variable. Se verá cómo se hacen las llamadas a procedimientos y se detallará la estructura interna de los mismos.

En este punto se hace la distinción entre datos locales, encapsulados en un subprograma y sólo accesibles en él mismo y los datos globales accesibles desde cualquier punto del programa.

Para finalizar se explicará como hacer trazas cuando aparecen subprogramas. Esto será de gran utilidad para asimilar los conceptos de parámetro por valor, parámetro por variable y valor devuelto.

Finalizamos viendo cómo se implementan las funciones y procedimientos en

lenguaje C.


next up previous contents