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.

7.2. Aspectos teóricos 133<br />

que se repres<strong>en</strong>ta con la fórmula IfTh<strong>en</strong>(p,A), y que <strong>en</strong> <strong>Pascal</strong> se corresponde<br />

con la instrucción if-th<strong>en</strong>-else cuando se omite la rama opcional else.<br />

Una g<strong>en</strong>eralización interesante de la estructura de selección consiste <strong>en</strong> una<br />

ramificación <strong>en</strong> n ramas (<strong>en</strong> lugar de dos) tras evaluar una condición. Esta<br />

g<strong>en</strong>eralización se repres<strong>en</strong>ta mediante el diagrama<br />

que se suele leer como:<br />

según s valga<br />

a → hacer fa<br />

.<br />

n → hacer fn<br />

s<br />

y se corresponde con la instrucción case <strong>en</strong> <strong>Pascal</strong>.<br />

a<br />

b<br />

n<br />

. . .<br />

fa<br />

fb<br />

. . .<br />

fn<br />

(7.5)<br />

Este esquema permite <strong>en</strong> muchas ocasiones expresar situaciones que sólo<br />

podrían especificarse usando un anidami<strong>en</strong>to múltiple de instrucciones de selección.<br />

Este hecho se hace pat<strong>en</strong>te <strong>en</strong> la figura 7.7.<br />

Por otra parte, a veces resulta conv<strong>en</strong>i<strong>en</strong>te usar un esquema de iteración<br />

alternativo al preprobado, <strong>en</strong> el que el predicado no actúe como condición de<br />

<strong>en</strong>trada a la iteración sino como una condición que ti<strong>en</strong>e que ser cierta para salir<br />

de la iteración. Esta construcción puede expresarse así:<br />

Cierto<br />

A<br />

p<br />

Falso<br />

(7.6)<br />

y se d<strong>en</strong>ota como DoUntil(p,A). La interpretación de esta estructura consiste<br />

<strong>en</strong> repetir la acción A hasta que la condición p se haga falsa. En <strong>Pascal</strong> este<br />

diagrama se corresponde con los bucles repeat.

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

Saved successfully!

Ooh no, something went wrong!