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.

6.3. Instrucciones de iteración 97<br />

while condición 1 do begin<br />

Instrucciones<br />

while condición 2 do<br />

Instrucción;<br />

Instrucciones<br />

<strong>en</strong>d {while}<br />

simplem<strong>en</strong>te escribi<strong>en</strong>do el while interior como una instrucción más d<strong>en</strong>tro del<br />

cuerpo de otro bucle while. Si el bucle while exterior no llega a ejecutarse, por<br />

ser falsa su condición, tampoco lo hará el while interior. Si, por el contrario, el<br />

while exterior se ejecutara por ser su condición verdadera, <strong>en</strong>tonces se evaluará<br />

la condición del while interior y, si también es verdadera, se ejecutarán sus<br />

instrucciones interiores hasta que su condición se vuelva falsa, tras lo cual el<br />

control vuelve al while exterior.<br />

Un ejemplo de frecu<strong>en</strong>te aplicación de anidami<strong>en</strong>to de instrucciones while<br />

puede ser la gestión de ficheros de texto, <strong>en</strong> el sigui<strong>en</strong>te fragm<strong>en</strong>to de código<br />

se cu<strong>en</strong>ta el número de caracteres del input, que está compuesto a su vez por<br />

varias líneas<br />

var<br />

c:char; numCar:integer;<br />

...<br />

numCar:= 0;<br />

while not EoF do begin<br />

while not EoLn do begin<br />

Read(c);<br />

numCar:= numCar + 1<br />

<strong>en</strong>d; {while not EoLn}<br />

ReadLn<br />

<strong>en</strong>d; {while not EoF}<br />

WriteLn(numCar)<br />

Las propiedades principales de la instrucción while que se deb<strong>en</strong> recordar<br />

son las sigui<strong>en</strong>tes:<br />

1. La condición se comprueba al principio del bucle, antes de ejecutar la<br />

instrucción; por eso se le llama bucle preprobado.<br />

2. El bucle termina cuando la condición deja de cumplirse.<br />

3. Como consecu<strong>en</strong>cia de los puntos anteriores la instrucción se ejecuta cero<br />

o más veces; por lo tanto puede no ejecutarse.

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

Saved successfully!

Ooh no, something went wrong!