capítulo 1. elementos básicos de la algoritmia

17
1 INTRODUCCIÓN A LA ALGORITMIA CAPITULO 1. ELEMENTOS BÁSICOS Ángel Fidalgo Blanco Universidad Politécnica de Madrid Licencia Creative Commons Algunos derechos reservados UNIDAD DIDÁCTICA Nº 1 . ELEMENTOS BÁSICOS OBJETIVOS: * Conocer qué es la programación. * Conocer qué es la algoritmia. * Saber cuáles son los elementos que componen los programas. * Saber cuáles son los elementos que componen la algoritmia.

Upload: phamnhi

Post on 06-Jan-2017

243 views

Category:

Documents


1 download

TRANSCRIPT

1

INTRODUCCIÓN A LA ALGORITMIA

CAPITULO 1 . ELEMENTOS BÁSICOS

Án gel Fida lgo Blan co

Un ivers idad Polit écn ica de Madrid

Licen cia Crea t ive Com m on s Algu n os derech os reservados

UNIDAD DIDÁCTICA Nº 1 .

ELEMENTOS BÁSICOS

OBJ ETIVOS:

* Con ocer qu é es la program ación .

* Con ocer qu é es la a lgoritm ia .

* Saber cu á les son los elem en tos qu e com pon en los progra m as .

* Saber cu á les son los elem en tos qu e com pon en la a lgorit m ia .

2

CONTENIDOS:

1 . In trodu cción .

2 . Pasos previos a la program ación de orden adores . Algorit m ia .

3 . Elem en tos de los len gu a jes de program ación y de los a lgoritm os .

3 .1 . Elem en tos de los len gu a jes de program ación .

3 .1 .1 . La in form ación .

3 .1 .2 . Las operacion es .

3 .1 .3 . Las in s tru ccion es .

3 .2 . Otros t ipos de cla s ificación pa ra la s in s tru ccion es .

3 .3 . Elem en tos de los a lgoritm os .

3 .3 .1 . La in form ación .

3 .3 .2 . Las expres ion es .

3 .3 .3 . Las in s tru ccion es .

3 .3 .4 . Flu jo de in s tru ccion es .

CONOCIMIENTOS PREVIOS:

* Es tru ctu ra y fu n cion am ien to de u n orden ador person a l (con ven ien te, n o

im prescin dible)

1 . INTRODUCCIÓN.

Pu ede qu e h aya vis to rea liza r con u n m ism o t ipo de orden ador

d iversa s ta rea s ; por ejem plo, ju ga r a "m arcian itos", h acer la con tabilidad de

u n a em presa , escr ibir textos , rea liza r d ibu jos an im ados , h acer operacion es

com pleja s y ú lt im am en te lo qu e se den om in a rea lidad vir tu a l.

¿Cóm o u n a m ism a m áqu in a (el orden ador) pu ed e rea liza r ta rea s tan

d iversa s? Rea lm en te u n orden ador lo ú n ico qu e h ace es procesa r

in form ación ; es decir , tom a u n a in form ación de en trada , la procesa y gen era

u n a in form ación de sa lida . As í en el ju ego de m arcia n os la in form ación de

en trada pu ede ser el m ovim ien to de u n a n ave m arcian a y la t rayector ia del

d ispa ro; el procesa m ien to pu ede ser com proba r s i la trayector ia del d ispa ro

3

in tercepta a l m ovim ien to de la n ave y la in form ación de sa lida pu ede ser la

explos ión o des tru cción de la n ave m arcian a .

Pa ra com pren der m ejor la idea de or den ador y program a pen sem os en

cóm o se u t iliza u n apa ra to reprodu ctor de video. El video lo u t ilizam os pa ra

ver pelícu la s qu e a lqu ilam os o com pra m os . Cada pelícu la vien e en u n

video-cassette, y pa ra ver u n a pelícu la lo ú n ico qu e se debe h acer es

in trodu cir el video-cas set te en el apa ra to reprodu ctor de video. En fu n ción

del video-cas sette u t ilizado verem os u n a u otra pelícu la . El video lo ú n ico

qu e h ace es reprodu cir la in form ación del video-cas set te a t ravés de u n a

ser ie de im ágen es . Un program a ser ía equ iva len te a u n video-cassette y u n

orden ador a l apa ra to reprodu ctor de video. En am bos ca sos el orden ador o el

video lo ú n ico qu e h acen es reprodu cir la in form ación del program a o de l

video-cas sette.

A u n orden ador se le debe de in dica r a t ravés de u n a ser ie de

m an da tos cu a l es la in form ación d e en trada , com o la procesa y cu á l es la

in form ación de sa lida . Al conjunto de m andatos se le denom ina

program a, en ton ces , ten dríam os u n progr am a pa ra ju ga r a "m arcian itos";

u n program a qu e rea liza la con tabilidad; u n program a pa ra escr ib ir textos ,

etc.

Un orden ador es pa recido a u n n iñ o, en el s en tido de qu e pa ra qu e

h aga a lgo, pr im ero debem os en señ a rle a h acerlo. As í por ejem plo, s i

qu erem os qu e u n n iñ o apren da a cru zar la ca lle él "solito", le da rem os u n a

ser ie de in s tru ccion es :

1 º Si hay un sem áforo, e sperar a que se ilum ine un hom brec ito verde y

cruzar rápidam ente .

2 º Si no hay un sem áforo cerca, busc ar un paso cebra y s i e s tá cerca

hacer lo s iguiente :

2 .1 . Ir al paso cebra.

2 .2 . Esperar a que no pase n ingún vehículo

2 .3 . Cruzar.

3 . Si no hay n ingún paso cebra cerca, entonces hacer lo s iguiente :

3 .1 . Mirar a la izquierda y a la derecha para ver s i viene algún coche a

alta ve loc idad o e s tá m uy cerca.

4

3 .2 . Si no viene n ingún coche cruzar rápidam ente , en caso de que

venga algún coche e sperar e ir al paso 3 .1 .

Si en lu ga r de da r a l n iñ o todas es ta s in s tru ccion es le in dico qu e pa ra

cru za r la ca lle lo ú n ico qu e debe h acer es ir de la acera don de es tá a la de

en fren te, pos iblem en te el n iñ o n o sabría qu é le qu erem os decir o

s im plem en te resu lta r ía peligroso.

Un program a se rea liza de igu a l form a , s e deben especifica r u n

con ju n to de in s tru ccion es (o sen ten cia s ) s im ples , orden adas en u n a

secu en cia qu e el orden ador debe cu m plir . El orden ador, a l igu a l qu e el n iñ o,

en t ien de solam en te in s tru ccion es s im ples ; es decir , in s tru ccion es con poco

n ivel de d ificu ltad , n o podem os da r u n a in s tru cción a l orden ador del t ipo

"dim e s i el añ o 1993 es b is ies to", en lu ga r de eso debem os da rle u n con ju n to

de in s tru ccion es qu e in diqu en com o se ca lcu la u n añ o bis ies to. A u n

orden ador se le pu eden da r in s tru ccion es en diversos "id iom as", a es tos

id iom as les den om in am os len gu a jes de program a ción . As í, la s in s t ru ccion es

qu e pu edo da r a u n orden ador u t ilizan do el len gu a je de program ación BASIC

son dis t in ta s a la s in s tru ccion es qu e le pu edo da r u t ilizan do el len gu a je de

program ación C.

Los len gu a jes de program ación defin en com o se escr iben la s

in s tru ccion es qu e en tien de el orden ador y el n ivel de d ificu ltad de la s

in s tru ccion es (el n ivel qu e en tien de el orden ador) y qu e órden es (o

in s tru ccion es ) s e le pu eden da r . El n ivel de d ificu ltad y el t ipo de

in s tru ccion es qu e se pu eden da r a u n orden ador su ele ser s im ila r en los

d is t in tos len gu a jes de program ación . As í pu es en los s igu ien tes capítu los

apren derem os :

* Con qu é da tos o in form ación traba ja el orden ador.

* Cu a les son la s operacion es qu e pu ede rea liza r con los da tos .

* Qu e t ipo de in s tru ccion es "en tien de" u n or den ador.

2 . PASOS PREVIOS A LA PROGRAMACIÓN DE ORDENADORES.

ALGORITMIA.

Com o todos sabem os rea liza r u n a pelícu la n o es u n traba jo fácil,

5

prim ero se debe escr ib ir el gu ión , despu és bu sca r los actores qu e m ejor s e

adapten a los d is t in tos papeles , en con tra r u n bu en director , roda r la

pelícu la , corta r p lan os , repet ir escen as qu e n o h an sa lido com o qu ería el

d irector , etc. Tam bién , pa ra rea liza r u n program a de orden ador lo prim ero

qu e se debe h acer es u n gu ión (qu é da tos serán los de en trada , com o los

procesa rá , cu a les s erán los da tos de sa lida , etc), e l guión de un program a

se conoce con e l n om bre de algoritm o . Pos ter iorm en te se elige el len gu a je

de program ación qu e m ejor s e adapte a l a lgoritm o, bu sca r u n bu en

program ador, escr ib ir el program a , repetir pa r tes qu e n o h acen lo qu e qu ería

el program ador, etc. Com o se pu ede observa r , rea liza r u n program a es u n a

ta rea laboriosa qu e se va h acien do m ás fácil a m edida qu e au m en ta la

experien cia , es decir , pa ra ser u n bu en program ador se deben rea liza r

program as , cu an tos m ás m ejor .

Si a u n program ador de BASIC le presen tan u n program a escr ito en C,

és te n o sabrá qu é h ace el program a ; s in em bargo s i a u n program ador de

BASIC le presen tan el a lgoritm o del program a C, és te s abrá perfectam en te

qu é h ace el program a . La a lgoritm ia es u n a h erram ien ta com ú n a todos los

len gu a jes de program ación ; es decir , da igu a l el len gu a je de program ación

qu e u t ilicem os pa ra escr ib ir u n program a , el a lgoritm o s iem pre será el

m ism o. Es ta ca racter ís t ica h ace qu e todos los program adores del m u n do

prefieran es tu dia r m ás u n a lgoritm o qu e u n program a , ya qu e es tán segu ros

de qu e el a lgoritm o lo en ten derán y el program a n o.

¿Se im agin a u s ted a u n director de cin e qu e h aga pr im ero la pelícu la y

despu és lla m e a expertos pa ra qu e le d igan s i la pelícu la es com ercia l, s i el

a rgu m en to es tá des fa sado, s i h ay m u ch as pelícu la s pa recidas en el

m ercado, s i debe ca m bia r a lgu n a escen a , etc?. Lo lógico es qu e el d irector

cu an do t ien e el gu ión llam e a l equ ipo de colabor adores , h agan los cam bios

oportu n os y se ru ede la pelícu la . En el pr im er ca so el d irector s e a rr iesga a

qu e la pelícu la n o sea aceptada por el pú blico y ten drá qu e roda rla de n u evo

adaptán dose a la s exigen cia s del pú blico; en el s egu n do caso la pelícu la

s a ldrá a l m ercado con ga ran tía s de éxito. Lo m ism o ocu rre cu an do se escr ibe

u n program a , pr im ero se rea liza el a lgoritm o y sobre él s e es tu dia s i el

program a es m u y gran de, s i rea liza rá la s operacion es qu e es taban previs ta s ,

in clu so con el a lgoritm o se pu ede ver s i el program a fu n cion a rá

correctam en te. Si deseam os rea liza r u n bu en program a deberem os

previam en te h aber rea lizado u n bu en a lgoritm o.

A pesa r de la s ven ta ja s qu e aporta la a lgoritm ia , h ay m u ch os

program adores qu e n o la u t ilizan porqu e dicen qu e es m ás len to escr ib ir el

program a : "h ay qu e h acer pr im ero el a lgoritm o y despu és el program a y es

6

m ás rápido s i sólo s e h ace el program a". Au n qu e es to sea cier to, s i el lector

desea ser u n bu en program a dor pr im eram en te deberá h acer a lgoritm os y

despu és program as . No obs tan te, s i el lector es capaz de rea liza r u n

program a y m en ta lm en te ten er el esqu em a del a lgoritm o, s i adem ás cree qu e

el program a n o lo va a ver n in gú n otro program ador, n i n u n ca se m odifica rá ,

n i n u n ca se le olvida rá y es tá s egu ro de qu e n o exis te otra form a de h acer

m ejor el program a , en ton ces n o h aga el a lgoritm o.

Los a lgoritm os se rea lizan con u n con ju n to de s ím bolos qu e irem os

descr ib ien do a lo la rgo del libro, pa ra cada sen ten cia de program ación su ele

h aber u n s ím bolo equ iva len te en a lgoritm ia , n o obs tan te exis ten u n a ser ie de

con dicion es qu e debe cu m plir cu a lqu ier a lgoritm o:

Finitud . Todo a lgoritm o debe acaba r tras u n n ú m ero fin ito de pasos . Es to

qu iere decir qu e el a lgoritm o debe fin a liza r en a lgú n m om en to, n o

podem os h acer u n a lgoritm o qu e n o acabe n u n ca . Adem ás cu an tos

m en os pasos ten ga el a lgoritm o m ejor será és te. El proceso s igu ien te

es u n ejem plo de u n a com bin ación de pasos qu e n u n ca fin a liza r ía :

1 . Hacer I=1

2 . Escribe e l valor de I.

3 . Increm entar e l valor de I en una unidad.

4 . Ir al paso 2 .

Adem ás todo a lgoritm o debe ten er u n pu n to de in icio (pr im er paso

rea lizado) y u n pu n to fin a l (ú lt im o paso rea lizado).

Defin ibilidad. Cada paso del a lgoritm o es tá defin ido de m odo preciso y s in

am bigü edad. Cada paso se debe en ten der perfectam en te. Por ejem plo:

Escribir datos personale s .

Es u n paso qu e se en t ien de pero n o es tá defin ido, ya qu e n o sabem os

cu á les son los da tos person a les a los qu e se refiere, en su lu ga r s e

debería escr ib ir :

Escribir nom bre , direcc ión , t e lé fono.

Entrada. Norm a lm en te todos los a lgoritm os t ien en u n a en trada . La en trada

su ele ser in form ación qu e o b ien se su m in is tra desde fu era del

a lgoritm o, o b ien se expresa den tro del a lgoritm o con u n as

con dicion es in icia les . Las en tradas es tán represen tadas por u n paso y

7

u n a in form ación . El pa so es tá represen tado en el a lgoritm o y dice qu é

acción se lleva a ca bo pa ra rea liza r la en trada ; la in form ación especi-

fica qu é t ipo de da to se u t iliza rá en la en trada .

1 . Leer Nom bre de l usuario de l fichero de datos .

2 . Esperar a que e l usuario in troduzca por e l t ec lado su edad.

En el pr im er paso s e in dica qu e el n om bre es tá a lm acen ado en a lgú n

lu ga r y se h a de ir a bu sca rlo. El t ipo de da tos es ca rácter . En el

s egu n do paso se in dica qu e el u su a rio debe in trodu cir por teclado s u

edad y el orden ador debe es pera r a qu e el u su a rio rea lice esa acción .

El t ipo de da tos es n u m érico.

Salida. Todo a lgoritm o debe ten er u n a o va ria s s a lida s . Las sa lida s son

es tados fin a les qu e gu a rdan relación con la en trada . Por ejem plo la

s a lida de u n a lgoritm o qu e rea lice el factor ia l de u n n ú m ero es tá

relacion ado con la en trada , en es te ca so m edian te u n a fórm u la .

Efec t ividad . Las operacion es y procesos qu e rea liza u n a lgoritm o deben ser

bas tan te bás ica s , a s í s e podrán h acer de m odo fácil y rápido.

8

3 . ELEMENTOS DE LOS LENGUAJ ES DE PROGRAMACIÓN Y DE LOS

ALGORITMOS.

3 .1 . Elem entos de los lenguajes de program ac ión .

Cu a lqu ier len gu a je de program ación traba ja bás icam en te con tres

elem en tos : in form ación , operacion es e in s tru ccion es . Se an a liza rán cad a

u n o de es tos elem en tos por s epa rado y despu és se descr ib irán la s relacion es

con el len gu a je de program ación C.

3 .1 .1 . La inform ac ión .

Es ta s e refiere a los da tos con los cu a les t raba ja rán los program as . Los

da tos su elen ser de dos t ipos : n u m éricos y a lfan u m éricos (ó ca racteres ). Los

da tos se pu eden agru pa r form an do es tru ctu ra s , la s es tru ctu ra s pu eden ser

m u y s im ples com o la s con s tan tes (28) y la s va r iables (x) o m u y com pleja s

com o la s m a tr ices y regis tros . La figura nº 1 .1 represen ta d is t in tos t ipos y

es tru ctu ra s de da tos .

9

3 .1 .2 . Las operac iones .

Se refieren a la s opera cion es qu e el orden ador es capaz de rea liza r con

los d iversos t ipos de da tos . Por ejem plo, la su m a de dos n ú m eros se pu ede

rea liza r por u n orden a dor d irectam en te; pero pa ra rea liza r la su m a de dos

m a tr ices h abría qu e h acer u n program a (exis ten a lgu n os len gu a jes de

progra m ación qu e perm iten directam en te rea liza r su m as de m a tr ices ).

Las operacion es pu eden ser rea lizadas m edian te operadores y

fu n cion es predefin idas qu e se aplican a u n t ipo de da tos determ in ado. Por

ejem plo, pa ra los da tos de t ipo n u m érico se perm iten los operadores su m a ,

res ta , d ivis ión y produ cto, cu ya operación se represen ta r ía :

a=5*3

c=6*b

Las fu n cion es qu e dispon e el len gu a je de program ación pa ra rea liza r

operacion es se den om in an predefin idas , ya qu e vien en defin idas de

an tem an o. Su u t ilización es com o s igu e:

a=sqrt(10)

b=log(b)

Norm a lm en te pa ra defin ir la s operacion es con operadores y fu n cion es

se u t iliza el térm in o expres iones , qu e pu eden ser operacion es con

operadores , con fu n cion es o con am bas , u n ejem plo ser ía :

a=b*log(b)+sqrt(i)

Eviden tem en te exis ten expres ion es tan to n u m érica s com o de

ca racteres y es ta s expres ion es pu eden traba ja r con dis t in tas es tru ctu ra s de

da tos .

3 .1 .3 . Las in strucc iones .

Las in s tru ccion es (tam bién den om in adas sen ten cia s ) son el con ju n to

de órden es qu e se le pu eden da r a l orden ador. En fu n ción del t ipo de orden

qu e in diqu e a l orden ador, la s in s tru ccion es se cla s ifican en los s igu ien tes

t ipos :

3 .1 .3 .1 Instrucc iones de entrada y salida (E/ S).

10

Tam bién den om in a das de lectu ra / escr itu ra (L/ S) ó in pu t/ ou t pu t

(I/ O). Es ta s in s tru ccion es se en ca rgan de la in form a ción de en trada y de

sa lida ; es decir de la in form a ción qu e n eces ita u n program a pa ra rea liza r su

ta rea y de la in form ación qu e gen era el program a . Son in s tru ccion es del t ipo:

Alm acen a en la va r ia ble "n om " el n om bre del u su a rio ó escr ibe el con ten ido

de la va r ia ble "n om ". Norm a lm en te la en trada y la s a lida se rea liza desde u n

fich ero ya creado (in form ación a lm acen ada en u n dispos it ivo m agn ético) o es

el u su a rio qu ien su m in is tra o recibe la in form a ción a t ravés del teclado y

pan ta lla del orden ador. No obs tan te la en trada y sa lida de in form a ción en el

orden ador pu ede rea liza rse de n u m erosas form as , tan ta s com o dispos it ivos

de en trada y sa lida se pu edan con ecta r a l orden ador. A con tin u ación se

descr iben los d ispos it ivos de en trada y sa lida m ás com ú n m en te u t ilizados

por los orden adores . Pa ra cada u n o de ellos exis t ir ían in s tru ccion es de

en trada y sa lida .

Dispos it ivos de entrada.

Son los u t ilizados pa ra in trodu cir la in form ación en u n orden ador. El

d ispos it ivo de en trada m ás u t ilizado es el t ec lado (ver figura 1 .3 .),

és te es s im ila r a u n a m áqu in a de escr ib ir , sólo qu e en lu ga r de

a lm acen a r la in form ación en u n papel, el teclado en vía la in form ación

a los d ispos it ivos de procesa m ien to.

La m is ión bás ica de u n dispos it ivo de en trada es su m in is tra r

in form ación a l orden ador. Norm a lm en te el orden ador t ien e

predefin ido u n s is tem a de en trada (pu er tos ), es tos pu ertos es tán

prepa rados pa ra qu e se con ecte a ellos cu a lqu ier d ispos it ivo de

en trada qu e pu eda en via r in form a ción . Los d ispos it ivos m ás com u n es

qu e se pu eden con ecta r son :

11

RATÓN: Es u n dispos it ivo

qu e se u t iliza pa ra

desplaza r u n apu n -

tador en la pan ta lla

en en torn os

grá ficos . El

desplazam ien to se

rea liza m ovien do el

d ispos it ivo a t ravés

de u n a su perficie.

SCANNERS: Su fu n -

cion am ien to es

s im ila r a u n a

fotocopiadora , la prin cipa l d iferen cia radica en qu e la fot ocopia en

lu ga r de a lm acen a rse en u n papel s e a lm acen a en el d is pos it ivo de

procesam ien to.

CÁMARAS/ VIDEO: Son cám aras y videos n orm a les , la ú n ica d iferen cia

radica en qu e la s im ágen es en lu ga r de a lm acen a rse en u n a pelícu la o

cin ta m agn ética se a lm acen an directam en te en la s u n idades de pro-

cesa m ien to.

SISTEMAS OCR: Son s is tem as qu e leen docu m en tos y los en vían a la u n i-

dad de procesa m ien to. La diferen cia con los elem en tos an ter iores es

qu e los s is tem as OCR recon ocen los ca racteres qu e in trodu cen , por

tan to los docu m en tos se a lm acen an com o textos qu e se pu eden

m odifica r .

MODEMS: Son s is tem as qu e con vierten la s eñ a l en viada por u n a lín ea

telefón ica a u n a señ a l in teligib le por el orden a dor. As í pu es , el m odem

a lm acen a la in form ación qu e llega por u n a lín ea telefón ica .

SISTEMAS AUDIO: Perm iten a lm acen a r en los d ispos it ivos de

procesam ien to señ a les de au dio, n orm alm en te son en viadas a través

de u n m icrófon o o cu a lqu ier s is tem a de reprodu cción de au dio.

Exis ten m u ch os dispos it ivos con ect ables a l orden ador (qu e en vían

in form ación a los d ispos it ivos de procesam ien to). Rea lm en te se pu ede

con ecta r cu a lqu ier d ispos it ivo qu e gen era rá a lgu n a señ a l o

in form ación (osciloscopios , m edidores de pres ión , a la rm as , etc.).

12

Dispos it ivos de salida.

Operan con la in form ación en sen tido in verso a l de los d ispos it ivos de

en trada ; es decir , reciben la in form ación del orden ador. Norm a lm en te

es tos d ispos it ivos m u es tran el es tado de la in form ación qu e con tien e el

orden ador.

El d ispos it ivo de

sa lida m ás popu la r

es la pantalla (ver

figura 1 .4 .), la cu a l

perm ite visu a liza r

tan to la in for -

m ación en viada por

los d ispos it ivos de

en trada , com o la

in form ación

gen erada por la

ejecu ción de u n

program a .

El orden ador su ele

ten er pu ertos de sa lida , a los cu a les s e pu eden con ecta r d is t in tos

d ispos it ivos de sa lida , en tre los cu a les des tacam os :

IMPRESORAS: Es te d ispos it ivo im prim e la in form ación en viada desde el

d ispos it ivo de procesam ien to. La im pres ión se su ele h acer en papel,

pu dien do escr ib ir ca racteres a lfan u m éricos , im ágen es , fórm u las ,

d ibu jos , etc.

PLOTTERS: son dis pos it ivos de sa lida especia lizados en traza r p lan os o

cu a lqu ier d ibu jo s im ila r .

MODEM: es u n dis pos it ivo de sa lida qu e se en ca rga de en via r la in form ación

del d ispos it ivo de procesam ien to a t ravés de la lín ea telefón ica . Es te

d ispos it ivo tam bién actú a com o dispos itivo de en trada , por tan to es

u n dispos it ivo de en trada / sa lida .

En gen era l s e pu ede con ecta r a l orden ador cu a lqu ier d ispos it ivo qu e

pa ra fu n cion a r n eces ite u n con trol m edian te in form ación . Podría s er

13

u n robot , u n a esca lera m ecán ica , u n reloj, etc.

3 .1 .3 .2 . Instrucc iones de control.

Son in s tru ccion es qu e s irven pa ra d ir igir la ejecu ción de u n program a .

Norm a lm en te u n program a es tá com pu es to por u n con ju n to de in s tru ccio-

n es qu e se ejecu tan u n a tra s otra . Las in s tru ccion es de con trol perm iten

cam bia r la s ecu en cia de ejecu ción . Son in s tru ccion es del t ipo: Si ocu rre ta l

con dición ejecu ta determ in adas in s tru ccion es , de lo con tra r io ejecu ta otra s ;

ó cu an do llegu es a es ta in s tru cción vete a la pr im era . La figura nº 1 .5

m u es tra el con trol de la ejecu ción pa ra es te t ipo de sen ten cias .

14

3 .1 .3 .3 .Instrucc iones it erat ivas .

Son in s tru ccion es qu e perm iten repet ir u n n ú m ero determ in a do de

veces u n con ju n to de in s tru ccion es . Por ejem plo, s i deseo rea liza r u n

program a qu e escr iba los n ú m eros en teros del 1 a l 10 .987.654 se pu ede

rea liza r de dos form as : escr ib ien do diez m illon es n ovecien tas och en ta y s iete

m il s eiscien ta s cin cu en ta y cu a tro in s tru ccion es de sa lida o u n sen cillo

bu cle con cu a tro sen ten cia s . La figura nº 1 .6 m u es tra la s itu ación citada .

15

3 .2 . Ele m entos de los algorit m os .

Los a lgoritm os es tán m u y ligados a los len gu a jes de program a ción , por

tan to es lógico su pon er qu e los elem en tos de los a lgoritm os son s im ila res a

los elem en tos de los len gu a jes de program a ción . Es to es com pletam en te

cier to, pa ra cada elem en to de los len gu a jes de program ación exis te u n

elem en to equ iva len te en a lgoritm ia , la pr in cipa l d iferen cia es su

represen tación . Mien tra s qu e pa ra u n len gu a je de program a ción los

elem en tos se represen tan m edian te u n a sen ten cia , los elem en tos de los

a lgoritm os se pu eden represen tan grá ficam en te. La represen tación grá fica

de u n a lgoritm o se den om in a organigram a . Un a lgoritm o in dica u n a

secu en cia de pasos (pa recido a u n a receta de cocin a ), la represen ta ción del

m ism o se pu ede h acer textu a lm en te o grá fica m en te. En es te libro

u t iliza rem os ú n icam en te la represen tación grá fica ; a s í pu es cu an do se

u t ilice la pa labra organ igram a n os es ta rem os refir ien do a la represen tación

de los a lgoritm os . Adem ás en los a lgoritm os tam bién se in dica el flu jo de la s

órden es ; es decir la s ecu en cia de ejecu ción , por tan to en los organ igram as

tam bién se debe p resen ta r es te flu jo. A con tin u a ción se descr iben los

elem en tos de los organ igram as :

3 .2 .1 . Inform ac ión .

La in form ación se represen ta m edian te u n con ju n to de celdas y en

cada celda se t ien e u n da to elem en ta l. A lo la rgo del cu rso se descr ib irán y

represen ta rán los d is t in tos t ipos y es tru ctu ra s de da tos .

3 .3 .2 . Expres iones .

En su represen tación n o se

d is t in gu e el t ipo de expres ión .

Todas la s expres ion es se

represen tan por u n rectán gu lo y

den tro del rectán gu lo se in dica la

expres ión con creta . La figura nº

1 .7 represen ta el s ím bolo de

expres ión , a s í com o va rios

ejem plos de expres ion es .

16

3 .3 .3 . Ins trucc iones .

En a lgoritm ia cada t ipo de in s tru cción t ien e u n a represen tación

grá fica d is t in ta . Com o s iem pre exis ten dos elem en tos : el s ím bolo grá fico qu e

in dica qu é t ipo de in s tru cción es y el texto qu e es tá den tro del s ím bolo, qu e

in dica la in s tru cción con creta . A con tin u ación se descr iben brevem en te los

s ím bolos pa ra cada t ipo de in s tru cción m ás com ú n m en te u t ilizados . Los

d iferen tes s ím bolos u t ilizados pa ra rea liza r organ igram as se descr ib irán a

m edida qu e se an a licen la s d is t in ta s in s tru ccion es qu e represen tan .

3 .3 .4 . Flujo de ins trucc iones .

El flu jo de in s tru ccion es en los organ igram as se repr esen ta m edian te

flech as qu e in dican la s ecu en cia de ejecu ción . Es m u y im portan te saber qu é

fu n ción se ejecu ta prim ero y cu a l despu és , ya qu e de es ta s ecu en cia depen de

el correcto fu n cion am ien to del program a .

En el ejem plo del n iñ o qu e in ten ta cru za r la ca lle es m u y im portan te

qu e se gu a rde el orden in dicado (pr im ero m ira r y despu és cru za r); ya se

im agin a rá el lector qu é ocu rr ir ía s i s e cam bia ra el orden (p r im ero cru za r y

despu és m ira r).

17

El flu jo secu en cia l s e represen ta por la u n ión de los s ím bolos grá ficos

a t ravés de u n a flech a , n o obs tan te m edian te la s in s tru ccion es de con trol

es ta s ecu en cia se pu ede cam bia r . La figura nº 1 .1 0 m u es tra la s dos

s itu acion es .