You are on page 1of 24

1

CAPITULO 4 . BUCLES
n gel Fidalgo Blan co
Un ivers idad Polit cnica de Madrid

Licen cia Creat ive Common s Algu n os derech os res ervados





















UNIDAD DIDACTICA N 4 .
BUCLES.


OBJETIVOS:

* Con ocer el con cept o de bu cles .
* Iden t ificar las dis t in t as part es de u n bu cle.
* Con ocer los dist int os t ipos de bu cles .
* Repres ent ar median t e algorit mos los dis t int os t ipos de bu cles .




2

CONTENIDOS:


4.1. In t rodu ccin .

4.2. Tipos de bu cles .

4.2.1. Bu cles For.
4.2.1.1. Con cept o del bu cle For.
4.2.1.2. Repres en t acin algort mica del bu cle For.

4.2.2. Bu cles Wh ile.
4.2.2.1. Con cept o del bu cle Wh ile.
4.2.2.2. Repres en t acin algort mica del bu cle Wh ile.

4.2.3. Bu cles Do-Wh ile.
4.2.3.1. Con cept o del bu cle Do-Wh ile.
4.2.3.2. Repres en t acin algort mica del bu cle Do-Wh ile.



CONOCIMIENTOS PREVIOS:

* As ign acion es de variables .
* Expres ion es .
* Sent en cias de en t rada y s alida.
* Sent en cia if-els e.



3
4.1. INTRODUCCIN.

En programacin se den omin a bu cle a la ejecu cin repet idas veces de
u n mis mo con ju nt o de s en t en cias . Normalment e en cada n u eva ejecu cin
vara alg n elemen t o. Para comprender mejor el con cept o de bu cle
imagin emos u n a mqu in a de t ren qu e part e de la es t acin "in icio" y viaja
h as t a la est acin "fin al"; cu an do el maqu in is t a llega a la es t acin "fin al"
vu elve a la es t acin "in icio" y as s u ces ivament e. Cada vu elt a qu e da el
maqu in ist a es u n a ejecu cin o u n a it eracin , en la cu al s e ejecu t an t odas las
in s t ru ccion es qu e hay en el t rayect o compren dido en t re la es t acin "in icio" y
la es t acin "fin al". La figura n 1 mu es t ra es t e concept o.





Para realizar u n bu cle correct ament e, el maqu in is t a t ien e qu e con ocer t res
cos as : el comien zo, el fin al del bu cle y el n mero de it eraciones qu e t ien e qu e
realizar. Para n u est ro maqu in ist a es fcil recon ocer el in icio y el fin al del
bu cle; pero adems algu ien t ien e qu e decirle el n mero de vu elt as qu e t ien e


4
qu e realizar, de ot ra forma est ara dan do vu elt as in defin idamen t e. La forma
de indicar al "maquinis t a" el nmero de vuelt as define el t ipo de bucle .
As pu es , cu an do u t ilicemos las in s t ru ccion es de bu cles debemos in dicar al
programa don de empieza el bu cle, don de t ermin a y cu ant as it eracion es t iene
qu e realizar. Todas las s en t en cias compren didas en t re el comien zo y el fin al
del bu cle s e ejecu t arn en cada it eracin.

In depen dien t ement e de qu t ipo de bu cle es t emos u t ilizan do s e debe in dicar
el in icio, el fin al y el n mero de it eraciones ; au n qu e para cada t ipo de bu cle
s e es pecifica de u n a forma dis t in t a. Es t o t ambin es aplicable para los
dis t int os len gu ajes de programacin , cada len gu aje defin e u n bu cle de forma
dis t int a; pero la u t ilizacin y los componen t es s on los mismos para t odos los
len gu ajes . A con t in u acin s e an alizarn los dis t int os t ipos de bu cles con su
repres ent acin algort mica.


5
4 . 2 . TIPOS DE BUCLES.

Exis t en , prin cipalmen t e, t res t ipos de bu cles , s u u t ilizacin depen de del t ipo
de programa qu e est emos realizan do. Los bu cles s e defin en bs icamen t e por
la forma en qu e les in dicamos el n mero de it eracion es qu e debe realizar .


4 . 2 . 1 . Bucles For.

4 . 2 . 1 . 1 . Concept o de bucle For.

Los bu cles for s e u t ilizan cu an do el programa s abe el n mero de vu elt as qu e
t ien e qu e realizar cu an do en t ra en el bu cle. El n mero de vu elt as s e pu ede
in dicar por u n a cons t ant e (por ejemplo "5" vu elt as ) o por u na expres in (por
ejemplo "n " vu elt as o "n*j" vu elt as ), en est e lt imo cas o cu an do el maqu in is t a
llega al in icio del bu cle la variable debe es t ar as ign ada o la expres in
calcu lada.

Para llevar la cu en t a del n mero de it eracion es qu e se realizan en el bu cle se
u t iliza u n a variable en t era, de es t a forma, en t odo momen t o s e s abe el
n mero de it eracin s in ms qu e obs ervar el valor de la variable, es t a
variable t ambin s e u t iliza para s aber cu n do s e debe acabar el bu cle.

En es t e t ipo de bu cles s e debe es pecificar al comien zo del mis mo la variable
en t era qu e s e u t ilizar para con t ar el n mero de it eracion es y el n mero de
vu elt as qu e debe realizar el bu cle. Para evit ar pos ibles errores en el valor de
la variable, al comien zo del bu cle s e debe es pecificar el valor in icial y el valor
fin al qu e t en dr la variable en t era, de es t a forma s e t en dr con t rolado en
t odo momen t o el n mero de it eracion es . Tambin es con ven ien t e es pecificar
el in crement o de la variable cada vez qu e s e realiza u n a it eracin (el 97% de
las veces el in cremen t o es 1).

Por ejemplo s i des eamos u t ilizar la variable en t era I para con t rolar el n mero
de it eracion es y qu eremos qu e realice 4 it eracion es , ent on ces s e podra
es pecificar de la s igu ient e man era:

I = 1 , 4 , 1

Es t o s ign ifica qu e al comen zar el bu cle la variable t oma el valor 1 y
fin aliza el bu cle cu an do t oma el valor 4. Tambin s e podra es pecificar qu e el
bu cle realizara 4 it eracion es de ot ras formas :



6
I = 2 , 5 , 1
I = 2 8 , 31 , 1
I = n, n+3 , 1
I = 2 , 8 , 2
I = 3 , 1 0 ,2

Si gen eralizamos , s e podra repres ent ar el in icio del bu cle como I = expr1 ,
expr2 , inc don de expr1 y expr2 repres en t an expres ion es en t eras e in c el
in crement o qu e t oma la variable I. La con dicin para qu e el bu cle realizara 4
it eraciones s era qu e la part e en t era de (expr2 +inc - expr1 )/ inc = 4 .
Compru ebe el lect or qu e est a con dicin s e cu mple para t odos los cas os
cit ados an t eriormen t e. La frmu la gen rica para calcu lar el n mero de
it eraciones qu e s e realizar den t ro de u n bu cle for es :

Part e ent era ((expr2 + inc - expr1 )/ inc)

Obs rves e qu e cu an do comien za el bu cle s e h ace cu mplir la con dicin de
qu e I=expr1 (cond1) y cu an do fin aliza el bu cle es porqu e n o s e cu mple la
con dicin I<=expr2 (cond2 ), el in cremen t o s e expres a por ot ra expres in
(cond3 ) (por ejemplo in cremen t o 1 s era I=I+1).

Cada vez qu e u n bu cle for realiza u na it eracin el valor de la variable I
cambia. Siempre qu e comien ce el bu cle el valor de la variable I s e h ace igu al
al valor de la primera expres in , es decir, I=expr1 . Post eriorment e, el valor
de I s er igu al al valor qu e t en a ant es mas el in crement o; es decir I=I+inc.
Veamos dos ejemplos :

Ejemplo 1. Los valores qu e t oma la variable I en el bu cle I=2,5,1 s on los
s igu ient es :

Primera it eracin I=2
Segu n da it eracin I=3
Tercera it eracin I=4
Cu art a it eracin I=5

Ejemplo 2. Para el cas o de I=3,10,2 s eran :

Primera it eracin I=3
Segu n da it eracin I=5
Tercera it eracin I=7
Cu art a it eracin I=9



7
La finalizacin del bucle s e det ect a por el valor qu e t oma la variable I, as
en el primer ejemplo en la lt ima it eracin el valor de I es igu al a 5, el bu cle
in t en t a realizar u n a n u eva it eracin y el valor de I t oma el valor 6 (5+in c) y
es t e valor s u pera al lmit e (6>5) por t an t o n o s e realiza el bu cle. En el
s egu n do cas o, el bu cle in t en t a realizar u n a qu in t a it eracin y el valor de I s e
h ace igu al a 11 (9+in c), est e valor s u pera al lmit e (11>10) por t an t o el bu cle
n o s e realiza.

Cu an do el bu cle fin aliza, el programa con t in a la ejecu cin en la primera
in s t ru ccin qu e en cu ent re des pu s del fin al del b u cle.



4 . 2 . 1 . 2 . Repres ent acin algort mica del bucle for.

En algorit mia el comien zo del bu cle for s iempre s e repres ent a por u n a
es pecie de h exgon o "es t ir ado" (ver la figura n 2). Dent ro del hexgono
s e debe es pecificar el comien zo y el final del bu cle; es decir, la con dicin
in icial y la con dicin fin al. El fin al del bu cle s e es pecifica con u n pu n t o
n egro. En la figu ra s e repres ent a el algorit mo para u n bu cle for con 4
it eraciones .



8



El valor de la variable en t era qu e s e u t iliza como con t ador s u fre u n proces o
de cambio den t ro del bu cle, cada vez qu e ocu rre u n a it eracin s e s u ma el
valor es pecificado en la expres in de increment o. Pero, qu ocu rre con el
valor de la variable an t eriorment e cit ada a n t es y des pu s de qu e s e ejecu t e el
bu cle?. La mayora de mis alu mn os h an t en ido mu ch os problemas en la
realizacin de los programas por n o con s iderar la an t erior pregu n t a, por
t ant o con vien e t en er en cu en t a qu ocu rre con la variable qu e s e u t iliza como
con t ador.

Ant es del bucle la variable en t era pu ede t en er cu alqu ier valor, es decir s i la
h emos as ign ado u n valor det ermin ado, s er es t e valor el qu e con t en ga; pero
at en cin , el valor de la variable cuando comienza el bucle s e s us t it uye
por el valor indicado en la expr1 , de es t a forma el valor an t erior s e
des t ru ye y s e carga u n o n u evo. As pu es s e debe pres t ar es pecial at en cin a
es t a variable.

Des pus del bucle la variable en t era con t ien e el valor de la lt ima it eracin


9
ms el in cremen t o. Es t e es u n fact or de vit al import an cia pu es t o qu e se
s u ele creer qu e el valor de la variable t ien e el lt imo valor as ign ado en la
lt ima it eracin . La figura n 3 represen t a u n algorit mo qu e mu es t ra los
valores de la variable "cont ador" ant es y des pu s de ejecu t ar u n bu cle for.
No exis t e n in g n problema en u t ilizar es t a variable despu s del bu cle
t en ien do en cu en t a las con s ideracion es an t eriores .




Por norma general las variables qu e u t ilicemos como con t adores en los
bu cles for n o las u t ilizaremos a lo largo de t odo el programa. No s e debe
cambiar el valor de la variable dent ro del bucle for ya qu e est o
"des pis t ara" al bu cle y cau s ara u n mal fu n cion amient o del mis mo.


Se s uele ut ilizar la variable del cont ador del bu cle for den t ro del mismo
para realizar ciert as operacion es , ya qu e s t a su min is t ra u n a s ecu en cia de
valores qu e s e pu eden u t ilizar para realizar ciert as operacion es . La s
s iguient es figuras 4 , 5 , 6 y 7 divers as u t ilizacion es de la variable de


1 0
con t ador dent ro de u n bu cle.





1 1





1 2




1 3





1 4


















1 5
4 . 2 . 2 . Bucles While.


4 . 2 . 2 . 1 . Concept o del bucle While.

El bu cle While s e u t iliza cu an do realmen t e n o s abemos el n mero de
it eraciones qu e s e van a realizar en el bu cle, s in embargo s s abemos qu e
mient ras s e cu mpla u n a det ermin ada con dicin debemos realizar el bu cle.
Cu an do es a con dicin ya n o s e cu mpla en t on ces el bu cle finalizar.

En es t e t ipo de bu cles n o exis t e n in gu n a variable qu e in diqu e el
n mero de vu elt as qu e h a realizado o falt a por realizar. El n ico con t rol qu e
u t iliza es u n a condicin qu e est al comien zo del bu cle, mient ras es t a
con dicin s ea ciert a s e realizan it eracion es y en el moment o qu e s ea fals a s e
fin aliza el bu cle.

Obs rves e qu e la con dicin es t al comien zo del bu cle y s t a h ace las
veces de u n a pu ert a de en t rada al mis mo. La pu ert a s e abre s i la con dicin
es verdadera y la pu ert a s e cierra s i la con dicin es fals a.

Al es t ar la con dicin a la en t rada del bu cle, lo primero qu e se h ace es
comprobar la con dicin y des pu s la it eracin ; est o s ign ifica qu e ant es de
comen zar a realizars e el bu cle debe comprobar qu e la con dicin es
verdadera, s i s t a n o lo es en t on ces el bu cle n o s e realizar. De h ech o cada
vez qu e est e bu cle h ace u n a it eracin debe volver a pas ar por la pu ert a y
comprobar s i la con dicin es verdadera o fals a.

Es t e t ipo de bu cles es mu y t il en programacin pu est o qu e s imu la
proces os reales ; por ejemplo en u n s u rt idor s e podra llen ar los deps it os de
combu s t ible mien t ras h aya gas olin a; u n a mqu in a expen dedora de billet es
pu ede ven der billet es mient ras h aya billet es . En gen eral es t e bu cle t ien e
aplicacin cu an do nos en cont remos ant e u n problema qu e s e en u n cie de la
forma mient ras . . ocurra algo. . . hacer t al cos a. El "ocu rra algo" es la
con dicin del bu cle y "h acer t al cos a" es el cu erpo del bu cle; es decir, las
s en t en cias qu e s e ejecu t an du rant e la it eracin . Por ejemplo:

Como ya s abes , las mqu in as de t abaco s u min ist ran u n paqu et e
det ermin ado in t rodu cien do u n as mon edas . Es t a mqu in a fu n cion a
con u n bu cle de t ipo Wh ile ya qu e s e podra expres ar por: "mient ras
haya paquet es de t abaco venderlos ".

mient ras (h aya t abaco)


1 6
ven derlos .

La con dicin "haya t abaco" s e pu ede expres ar por (t abaco >0 ) y el proceso
"venderlos " por: t omar dinero; dar cajet illa; devolver cambio(s i lo
h ay) y hacer t abaco=t abaco-1 (qu iere decir qu e qu eda u na cajet illa
men os ). As s e podra expres ar:

mient ras (t abaco>0)
t omar din ero.
dar cajet illa.
devolver cambio (s i lo h ay).
t abaco=t abaco-1. (s e h a ven dido u n paqu et e).
fin del bu cle.

Cu an do s e u t iliza es t e t ipo de bu cles se h a de t en er en cu en t a dos
cos as :

1.- Al comien zo del programa los valores de la expres in qu e forma la
con dicin es t n in icializados . En el ejemplo an t erior es lgico qu e
an t es de pon er a fu n cion ar la mqu in a h ayan met ido cajet illas de
t abaco. Si por ejemplo, s e h an met ido in icialmen t e 10 0 cajet illas en el
programa s e expres a "t abaco=1 0 0 " y es t o s e realiza an t es de
comen zar el bu cle.

2.- Den t ro del bu cle s e alt era la con dicin de en t rada; es decir, s i s e es t
ejecu t an do el bu cle es t o qu iere decir qu e la con dicin es verdadera. Si
es t a con dicin n o cambiara n u n ca ent onces el bu cle s era in fin it o (ya
qu e la pu ert a es t ara s iempre abiert a). As pu es , parece lgico s u pon er
qu e den t ro del bu cle llegar u n moment o en el qu e la con dicin s ea
fals a y por t ant o fin alice el bu cle. En el ejemplo ant erior exis t e la
s en t en cia "t abaco=t abaco-1 " qu e cau s ar qu e la con dicin (t abaco>0)
s ea fals a. Realmen t e es t o ocu rrir cu an do s e realicen 100 it eracion es
den t ro del bu cle o lo qu e es lo mis mo cu an do s e h ayan ven dido las 100
cajet illas de t abaco.


Recuerda que: los bu cles wh ile an t es de comen zar a realizar u n a it eracin
compru eban u n a con dicin , s i s t a es verdadera en t on ces s e realiza u n a
it eracin y s i es fals a en t on ces fin aliza la ejecu cin del bu cle. Es t o s u ele s er
propen s o a con st ru ir bu cles qu e n o se ejecu t an n u n ca o bu cles qu e s e
ejecu t an in defin idament e (bu cles in fin it os ).



1 7
Los bucles que no se ejecut an nunca s e s u elen pres ent ar cu an do an t es del
bu cle la con dicin es fals a, por t an t o no s e en t ra en el bu cle y s t e n o s e
realiza. Si ocu rre est o revis a los valores in iciales qu e con forman la expres in
qu e h ay den t ro de la con dicin .

Los bucles infinit os s e s u elen pres ent ar cu an do den t ro del bu cle n o s e
cambia la con dicin de en t rada. Si in icialment e es t a con dicin es verdadera
en t on ces s e ent ra en el bu cle; pero s i den t ro del mismo nu nca se hace la
con dicin fals a, en t on ces el bu cle s e ejecu t a in defin idament e.


4 . 2 . 2 . 2 . Repres ent acin algort mica del bucle While.

La es t ru ct u ra gen eral de la s en t encia wh ile es la s igu ient e:

(1)mien t ras (con dicin )
(2) bloqu e de s en t en cias ;
(3)fin wh ile.

don de bloque de s ent encias es cu alqu ier con ju n t o de s en t en cias C. La
es t ru ct u ra t ien e t res part es :

(1) mient ras condicin s e repres ent a por el mis mo s mbolo qu e u n a
s en t en cia if y dent ro de l la con dicin .
(2) cada s en t en cia se repres ent a por s u s mbolo.
(3) el fin while s e repres en t a median t e u n pu nt o.

La figura n 8 expres a u n organ igrama de la s en t en cia Wh ile y s u
explicacin .



1 8

Obs rves e qu e el in icio del bu cle es idn t ico al in icio de u n a s en t en cia
if. Si la con dicin es verdadera en t onces s e ejecu t an las s en t en cias del
bloqu e, mien t ras qu e s i la con dicin es fals a en t onces la prxima s en t en cia a
ejecu t ar es la qu e est det rs del fin while.

Recu rdes e qu e den t ro del bloqu e de s en t en cias debe h aber algu n a
qu e cambie la con dicin de ent rada al mis mo. Para compren der mejor el
fu n cion amient o de es t e t ipo de bu cle realizaremos el s igu ien t e ejemplo:

"Realizar u n organ igrama qu e repres en t e el fu n cion amient o de u n a mqu in a
de t abaco (por s implificar, s u pon er qu e s lo h ay u n a marca de t abaco con
u n precio fijo). La mqu in a debe acept ar el din ero, dar el paqu et e y devolver
el cambio".

Es t e problema s e pu ede res olver con la es t ru ct u ra general: "mien t ras
h aya t abaco
ven derlo", dn de ven derlo es u n con ju n t o de accion es . Es t a es t ru ct u ra
in dica qu e el organ igrama s e pu ede realizar a t ravs de u n bu cle Wh ile.



1 9
La figura n 9 mu est ra la s olu cin .

















2 0
4 . 2 . 3 . Bucles Do-While.

4 . 2 . 3 . 1 . Concept o del bucle Do-While.

Los bu cles for y while t ien en la caract ers t ica com n de qu e la
con dicin s e evalu aba an t es de realizar el bu cle, as caba la pos ibilidad de
qu e n o s e realizara n in gu n a it eracin . La prin cipal diferen cia del bu cle
do-while, res pect o a los an t eriores , es qu e s t os eval an la con dicin al fin al
del bu cle; as el bu cle s iempre realizar al men os u n a it eracin .

En los bu cles do-while n o s e s abe a priori el n mero de it eraciones
qu e s e van a realizar, depen de de la con dicin qu e h ay al fin al del bu cle; s i
s t a es ciert a s e vu elve a realizar u n a it eracin , mien t ras qu e s i es fals a s e
acaba la ejecu cin del bu cle.

La con dicin al fin al del bu cle act a como u n a compu ert a de s alida del
mis mo, s i la con dicin es verdadera est a compu ert a est ar cerrada y por
t ant o debemos realizar u n a nu eva it eracin . Si la condicin es fals a,
en t on ces la compu ert a est ar abiert a y s e podr aban don ar la ejecu cin del
bu cle. En es t e t ipo de bu cle n o h ay n in gu n a variable qu e con t role el n mero
de it eracion es , el con t rol lo realiza la con dicin , as p u es es lgico s u pon er
qu e den t ro de las s en t en cias qu e compon en el bu cle h aya al men os u n a qu e
pu eda cambiar el valor de la con dicin o compu ert a de s alida.

Al igu al qu e los bu cles while es t e t ipo de bu cles es mu y u t ilizado
pu es t o qu e mu ch as s it u aciones reales t ien en u n a int erpret acin direct a en
el bu cle do-while. Con cret amen t e t odas aqu ellas qu e s e pu edan expres ar
median t e: "haz . . . . . acciones . . . . . mient ras ocurra una condicin" la
es t ru ct u ra del bu cle s era:

h acer
bloqu e de s en t en cias
mient ras (con dicin )

Obs rves e qu e mient ras (condicin) es t al fin al del bu cle y es t o h ace
qu e el bloqu e de s en t en cias s e realice al men os u n a vez (s e realiza u n a
it eracin ) in depen dien t ement e del valor qu e t en ga la con dicin . Es t a
caract erst ica es la qu e det ermin a la u t ilizacin del bu cle; es decir, si
debemos realizar un bucle en el cual es neces ario al menos hacer una
it eracin, ent onces ut ilizaremos el bucle do -while.

Son mu ch as las s it u acion es en las cu ales s e requ iere qu e el bu cle s e


2 1
ejecu t e al men os u na vez, por ejemplo t odas aquellas que neces it en que
una ent rada de informacin cumpla una s erie de condiciones y no s e
quiera cont inuar con el programa has t a que s e cumplan . Por ejemplo, en
el organ igrama de la mqu in a de t abaco s e int rodu ca u n a cant ida d de
din ero para adqu irir u n paqu et e, s era con ven ien t e n o dejar con t in u ar la
ejecu cin del programa h as t a qu e la cant idad de din ero int rodu cida n o fu ese
igu al o s u perior al precio del paqu et e de t abaco. Es t o s e realizara as :

h az
leer precio (cant idad in t rodu cida)
mient ras (precio<200)

Es t e bu cle do-while n o dejara con t inu ar con el programa h as t a qu e el
u s u ario int rodu jera al men os 200 pes et as . Si int en t amos h acer es t a
s it u acin con u n bu cle while t en dramos :

precio=0 leer precio
mient ras (precio<200)mien t ras (precio<200)
leer precioleer precio
fin del bu cle.fin del bu cle.

Obs erva qu e en el primer cas o con la s en t en cia precio=0 es t amos
forzan do a qu e el bu cle while s e realice al men os u n a vez, es t a s it u acin se
res u elve mejor con u n bu cle do-while; en el s egu n do cas o n eces it amos dos
s en t en cias de lect u ra para realizar lo mis mo qu e el bu cle do-while con u n a
s ola s en t en cia.

Es t as s it u aciones res alt an la n eces idad de los bu cles while de
in icializar las variables qu e in t ervien en en la con dicin , mient ras qu e los
bu cles do-while n o t ien en n eces idad de in icializar n in gu n a variable.

A con t in u acin veamos u n ejemplo de u t ilizacin de bu cles do-while :


"Realizar u n organ igrama a t ravs del cu al s e pu eda ju gar al n mero
es con dido. En est e ju ego algu ien es cribe u n n mero y ot ra pers on a t rat a de
adivin arlo, es t a person a dir u n n mero y s i es mayor qu e el qu e es t es crit o
s e deber decir "alt o" mient ras qu e s i es men or s e deber decir "bajo". El
ju ego fin aliza cu an do s e aciert a el n mero es crit o y gan a aqu el qu e lo h aya
acert ado en men os in t en t os".

Es t e ju ego s e pu ede expres ar de la forma: "di u n n mero mien t ras no


2 2
aciert es el n mero s ecret o" "ju ega mien t ras n o aciert es el n mero s ecret o".
Es t o s e pu ede expres ar median t e u n bu cle do-while de la s igu ient e forma:

x=0
h az
lee n mero (el ju gador dice u n n mero)
s i es mayor qu e el secret o es cribe ("alt o")
s i es men or qu e el s ecret o es cribe ("bajo")
x=x+1
mient ras (n mero dis t int o al s ecret o)
es cribe ("h as acert ado en ", x , "int en t os")

Obs erva qu e el bu cle s e realiza h ast a qu e el ju gador aciert a el n mero
s ecret o. La variable x mide el n mero de in t ent os qu e h a realizado el ju gador
h as t a acert ar.


4 . 2 . 3 . 2 . Repres ent acin algort mica del bucle Do-While.

La es t ru ct u ra del bu cle do-while t ien e t res part es diferen ciadas :
in icio, bloqu e de s en t en cias y fin al.

do(comien zo del bu cle).
bloqu e de s en t en cias ;(bloqu e de s en t en cias ).
mient ras (con dicin )(fin del bu cle).

En est e cas o la con dicin fin al del bu cle t ambin act a como
"compu ert a" de s alida o in dicador de it eracion es . El organ igrama del bu cle
do-while s e repres en t a en la figura n 1 0



2 3


Obs rves e qu e el fin al del bu cle (mien t ras (con dicin )) s e
repres ent a por el mis mo s mbolo qu e u n a s en t en cia if. Den t ro de las
s en t en cias qu e compon en el cu erpo del bu cle debe haber algu n a qu e
pos ibilit e cambiar el valor de la con dicin , ya qu e s i el valor de s t a
in icialment e es verdadero, en t on ces realizaramos u n bu cle in fin it o.

El algorit mo a t ravs del cu al repres ent bamos el ju ego del n mero
s ecret o s e repres ent a median t e u n organ igrama como s e mu est ra en la
figura n 11



2 4

You might also like