Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Funciones y procedimientos
Al aplicar esta técnica a un problema complejo, este se divide en varios subproblemas más
simples, y estos a su vez en otros subproblemas más simple aún.
La técnica debe ser aplicada hasta obtener subproblemas lo suficientemente simples como
para poder ser resueltos fácilmente con algún lenguaje de programación.
Los subproblemas toman el nombre de módulos, que son cada una de las partes de un
programa que resuelve uno de los subproblemas en que se divide el problema complejo
original.
Cada uno de los módulos tiene una tarea bien definida y algunos necesitan de otros para
poder operar, en este caso se establece una comunicación mediante una interfaz de
comunicación que para funcionar correctamente debe estar bien definida.
MÓDULOS
Después de descomponer un problema complejo en subproblemas, se puede
construir un subalgoritmo o módulo por cada subproblema.
Para modularizar el algoritmo es necesario de una sintaxis para expresar esa nueva
estructura formada por módulos, es necesario uniformizar
Los programas de alto nivel hacen uso de los bloques de código a los que se les
pasan unas variables (parámetros) con las que se ejecuta una operación y
calcula sus resultados (funciones, procedimientos o métodos).
Un tipo de dato de retorno: tipo de dato del valor que la subrutina devolverá al
terminar su ejecución.
Crear la subrutina.
Ayudan a corregir errores, puesto que un error en una subrutina sólo se corrige una
vez aunque esa subrutina sea llamada en diferentes puntos del programa principal.
La CPU del equipo funciona mas eficientemente, llamando al bloque solo cuando lo
necesita, en vez de ejecutar todos los bloques en cada ciclo de ejecución
VENTAJAS DE USAR SUBRUTINAS (CONT.)
Una ventaja adiciona al trabajar con subrutinas es que se pueden construir y utilizar
bibliotecas de subrutinas. Una biblioteca es un archivo que contiene una colección
de programas (subrutinas) sobre un tema. Durante el proceso de ensamblaje del
programa, el programa enlazador toma de la biblioteca solamente las rutinas que
son solicitadas y las incorpora al programa objeto.
FUNCIONES Y PROCEDIMIENTOS
Las variables son estructuras de datos que pueden cambiar de contenido a lo largo de la
ejecución de un programa.
El alcance de una variable es la región del código fuente del programa dentro del cual
se representan ciertos datos.
Las variables locales sólo existen dentro de una función, una sección del código del
programa que realiza una tarea específica, en la que se definen o declaran.
Las variables locales se vuelven a crear cada vez que la función es llamada, o
ejecutada.
Estas variables no son accesibles para otras funciones o para el programa principal
y, como tal, por lo general están implementados utilizando un tipo especial de
estructura de datos, conocido como pila.
PILA
Antes de ejecutar una función, un programa añade todas las variables locales
declaradas en esa función en la pila, en orden inverso en que han sido declaradas.
Las variables globales no se vuelven a crear cada vez que una función en particular
es llamada.
Los programas suelen utilizar variables globales para almacenar datos que son
procesados por muchas funciones diferentes.
Los programadores pueden determinar el punto exacto en el que un programa modifica el valor de
una variable local, mientras que las variables globales pueden ser modificadas en cualquier lugar
dentro del código fuente.
Las variables locales también producen menos interacciones inesperadas con llamadas a
funciones, o el mundo exterior, conocidas como efectos secundarios, que las variables globales.
Las variables globales son accesibles en funciones en las que no son utilizadas, en contradicción
con el concepto de programación modular, en el que el código del programa se compone de
bloques o módulos pequeños aislados, por lo que los programadores que favorecen la estructura
modular rara vez las utilizan.
PASO DE PARÁMETROS (POR VALOR Y REFERENCIA)
Las dos opciones más comunes son: utilizar registros o utilizar la pila. Que se utilicen
registros o la pila depende de la arquitectura en cuestión y del convenio que se
siga para el paso de parámetros en dicha arquitectura.
PASO DE PARÁMETROS POR VALOR
El paso de parámetros por valor implica la siguiente secuencia de acciones:
La subrutina, finalizadas las operaciones que deba realizar y antes de devolver el control
al programa invocador, carga el valor resultado en los parámetros de salida de la misma.
El programa invocador recoge los parámetros de salida de los registros elegidos para ello.
Liang, Y. D. (2014). Introduction to Programming with C++ Third Edition. Essex - England:
Pearson Education.