09.05.2013 Views

Algoritmos y Programación en Pascal

Algoritmos y Programación en Pascal

Algoritmos y Programación en Pascal

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

192 Capítulo 9. <strong>Programación</strong> con subprogramas<br />

SumaDeFracciones<br />

SumarFracciones<br />

SimplificarFraccion<br />

M.C.D.<br />

Figura 9.1. Estructura de bloques de SumaDeFracciones.<br />

Por otra parte, SumarFracciones y SimplificarFraccion constituy<strong>en</strong> bloques<br />

locales e indep<strong>en</strong>di<strong>en</strong>tes <strong>en</strong>tre sí. El programa principal no ti<strong>en</strong>e acceso al<br />

interior de dichos bloques, sino que ha de llamarlos mediante sus nombres. En<br />

resum<strong>en</strong>, la estructura de bloques del programa sería la de la figura 9.1.<br />

9.3 Metodología de la programación con<br />

subprogramas<br />

La programación con subprogramas consiste <strong>en</strong> un conjunto de técnicas que<br />

permit<strong>en</strong> y facilitan la descomposición de un algoritmo <strong>en</strong> partes más simples <strong>en</strong>lazadas<br />

<strong>en</strong>tre sí para su ejecución mediante llamadas realizadas por el programa<br />

principal o por otros subprogramas.<br />

En el ejemplo de refer<strong>en</strong>cia, la acción correspondi<strong>en</strong>te al programa principal<br />

SumaDeFracciones se descompone <strong>en</strong> dos más simples: SumarFracciones y<br />

SimplificarFraccion. El programa principal estará formado por una llamada<br />

a cada una de estas acciones, obt<strong>en</strong>iéndose la solución buscada.<br />

Un subprograma está formado por una agrupación de acciones y datos, de<br />

las cuales una parte (a la que llamamos interfaz ) es visible fuera del mismo<br />

y permite su comunicación con el exterior, y la otra queda oculta al resto del<br />

programa. La interfaz está constituida por el id<strong>en</strong>tificador del subprograma y el<br />

tipo de sus parámetros. Esta parte ti<strong>en</strong>e que ser conocida allí donde se efectúa la<br />

llamada. En cambio, el cont<strong>en</strong>ido de los subprogramas es privado y permanece<br />

oculto. Así, <strong>en</strong> el ejemplo, el programa principal no puede acceder a la función<br />

MCD porque es un objeto local del procedimi<strong>en</strong>to SimplificarFraccion.<br />

Cada subprograma debe desempeñar una acción específica e indep<strong>en</strong>di<strong>en</strong>te<br />

de los demás de forma que sea posible aislar un subprograma determinado y<br />

conc<strong>en</strong>trarnos <strong>en</strong> las acciones que desempeña sin preocuparnos por las posibles<br />

interfer<strong>en</strong>cias con los restantes. Las acciones expresadas <strong>en</strong> los subprogramas

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!