introducciÓn a la algoritmia capitulo 2. … · ordenador, la información puede ser constante...

16
1 INTRODUCCIÓN A LA ALGORITMIA CAPITULO 2. SENTENCIAS DE ENTRADA Y SALIDA Ángel Fidalgo Blanco Universidad Politécnica de Madrid Licencia Creative Commons Algunos derechos reservados UNIDAD DIDÁCTICA Nº 2 . SENTENCIAS DE ENTRADA Y SALIDA. OBJETIVOS: * Saber representar mediante organigramas las sentencias de entrada y salida.

Upload: phamkhue

Post on 13-Oct-2018

221 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: INTRODUCCIÓN A LA ALGORITMIA CAPITULO 2. … · ordenador, la información puede ser constante (conocida en el momento ... Para indicar en un organigrama una sentencia de entrada

1

INTRODUCCIÓN A LA ALGORITMIA

CAPITULO 2 . SENTENCIAS DE ENTRADA Y SALIDA

Á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º 2 .

SENTENCIAS DE ENTRADA Y SALIDA.

OBJ ETIVOS:

* Saber represen ta r m edian te organ igram as la s s en ten cia s de en trada y

sa lida .

Page 2: INTRODUCCIÓN A LA ALGORITMIA CAPITULO 2. … · ordenador, la información puede ser constante (conocida en el momento ... Para indicar en un organigrama una sentencia de entrada

2

CONTENIDOS:

1 . In trodu cción .

2 . Represen tación a lgorítm ica de la s s en ten cia s de en trada y sa lida .

2 .1 . Represen tación a lgorítm ica de la s s en ten cia s de en trada .

2 .2 . Represen tación a lgorítm ica de la s s en ten cia s de sa lida .

CONOCIMIENTOS PREVIOS.

- Tipos de va riables .

- Sen ten cia s de a s ign ación .

Page 3: INTRODUCCIÓN A LA ALGORITMIA CAPITULO 2. … · ordenador, la información puede ser constante (conocida en el momento ... Para indicar en un organigrama una sentencia de entrada

3

1 . INTRODUCCIÓN.

En program ación se den om in a sen ten cia s de en trada a aqu ella s qu e

perm iten en via r in form ación desde el exter ior a l in ter ior de u n program a y

sen ten cia s de sa lida a aqu ella s qu e perm iten en via r in form ación des de el

in ter ior a l exter ior de u n program a . La figura nº 1 . ilu s tra es te con cepto.

Page 4: INTRODUCCIÓN A LA ALGORITMIA CAPITULO 2. … · ordenador, la información puede ser constante (conocida en el momento ... Para indicar en un organigrama una sentencia de entrada

4

Im agin em os qu e qu erem os rea liza r u n program a qu e n os in diqu e s i la

person a qu e lo es tá u t ilizan do es o n o m ayor de eda d. Pa ra ello ten drem os

qu e a lm acen a r la edad de la person a en u n a va riable y pos ter iorm en te

pregu n ta r s i la edad es m ayor qu e 18. El a lgoritm o podría s er a lgo com o es to:

In trodu cir la edad en la va r iable años .

Es años m ayor o igual que 1 8 en ton ces escr ibe "m ayor de edad".

Es años m enor que 1 8 en ton ces escr ibe "m en or de edad".

Sabem os com o a s ign a r va lores a la va r iable años , n o obs tan te

ten em os u n problem a ¿Qu é edad ten drá la person a qu e u t ilice el program a?.

Rea lm en te n o lo sabem os , es decir el va lor de la va r iable años ten drá qu e

a s ign a rse cu an do se es té ejecu tan do el p rogram a . Las sen ten cia s de en trada

se pu eden u t iliza r cu an do ten gam os u n problem a pa recido; es decir , s i n o

con ocem os en el m om en to de escr ib ir el progra m a el va lor de u n a va ria ble

Page 5: INTRODUCCIÓN A LA ALGORITMIA CAPITULO 2. … · ordenador, la información puede ser constante (conocida en el momento ... Para indicar en un organigrama una sentencia de entrada

5

podem os u t iliza r u n a sen t en cia de en trada , a s í el va lor s e a s ign a rá cu an do

se es té ejecu tan do el program a . En es te ca so el va lor lo in dica rá el u su a rio

m edian te el teclado del orden ador. La figura nº 2 ilu s tra es te con cepto.

En el a lgoritm o an ter ior tam bién ten em os dos sen ten cia s de sa lida :

escribe "m ayor de edad" y escribe "m enor de edad". Solam en te se

ejecu ta rá u n a de ella s cu an do se es té u t ilizan do el program a , en cu a lqu ier

ca so, la s en ten cia de sa lida m u es tra u n a in for m ación desde el progra m a a la

pan ta lla ; es decir desde el in ter ior del program a a l exter ior . La figura nº 3 .3

ilu s tra es te con cepto.

Las sen ten cia s de sa lida tam bién pu eden escr ib ir el va lor de u n a

va riable, au n qu e su va lor n o sea con ocido de an tem an o. Por ejem plo,

podríam os añ adir u n a sen ten cia de sa lida a l a lgoritm o an ter ior pa ra qu e

escr ib iera el va lor de la va r iable años . El a lgoritm o qu eda ría de la s igu ien te

m an era :

Page 6: INTRODUCCIÓN A LA ALGORITMIA CAPITULO 2. … · ordenador, la información puede ser constante (conocida en el momento ... Para indicar en un organigrama una sentencia de entrada

6

1 . In trodu cir la edad en la va r iable años .

2 . Es años m ayor o igual que 1 8 en ton ces escr ibe "m ayor de edad".

3 . Es años m enor que 1 8 en ton ces escr ibe "m en or de edad".

4 . Escribe el va lor de la va r iable años .

En los len gu a jes de progra m ación exis te u n a gran va riedad de sen -

ten cia s de en tra da y de sa lida , n orm a lm en te es ta s s en ten cias se escr iben de

form a dis t in ta en fu n ción de la in form ación de en trada o de sa lida , por

ejem plo se escr ib ir ía de u n a form a s i la in form ación de en trada es n u m érica

y de otra form a s i la in form ación de en trada son ca racteres . Tam bién se

pu eden escr ib ir la s s en ten cia s de en trada y sa lida de d is t in ta form a en

fu n ción de don de reciban la in form ación o don de la en víen . Por ejem plo u n a

sen ten cia de sa lida pu ede en via r la in form ación a la pan ta lla , a la im presora ,

a l d isco du ro, a l d isket te, a otro orden ador, a u n dispos it ivo de con trol

rem oto, etc.

Norm a lm en te a la s s en ten cia s de en trada y sa lida se la s con oce com o

sen ten cia s de E/ S (En trada / Sa lida ) o sen ten cia s de I/ O (In pu t/ Ou tpu t cu ya

tradu cción ser ía in pu t = en trada y ou tpu t = sa lida ).

Not a : La m a y oría d e los lengua jes d e p rogra m a ción no a d m it en la "ñ"

com o p a rt e d el nom bre d e va ria ble , p or t a nt o la va ria ble a ños t end ría

que d enom ina rs e d e ot ra form a . En a lgori t m ia no h a y n ingún

p roblem a d e nom bra r a la s va ria bles com o s e d es ee .

Recuerda que : Las sen ten cia s de en trada en vían in form ación desde el

exter ior a l program a, n orm a lm en te la in form ación la su ele su m in is tra r el

u su a rio del program a a t ravés del teclado y és ta s e a lm acen a en u n a

va riable. Las sen ten cia s de sa lida en vían in form ación del program a a l

exter ior , n orm a lm en te es ta in form ación se escr ibe en la pan ta lla del

orden ador, la in form ación pu ede ser con s tan te (con ocida en el m om en to

de escr ib ir el progra m a) o va r iable (descon ocida en el m om en to de escr ib ir

el program a).

Page 7: INTRODUCCIÓN A LA ALGORITMIA CAPITULO 2. … · ordenador, la información puede ser constante (conocida en el momento ... Para indicar en un organigrama una sentencia de entrada

7

2 . REPRESENTACIÓN ALGORÍTMICA DE LAS SENTENCIAS DE

ENTRADA Y SALIDA.

2 .1 . Representac ión algorítm ica de las sentenc ias de entrada.

Pa ra in dica r en u n organ igra m a u n a sen ten cia de en trada se

n eces itan dos cosas : u n a es el s ím bolo qu e represen ta la s en ten cia y otra es

el lu ga r don de se va a a lm acen a r la in form ación de en trada . El s ím bolo de la

s en ten cia se represen ta en la figu ra y el lu ga r don de se va a gu a rda r la

in form ación se especifica por el n om bre de u n a variable qu e es tá den tro del

s ím bolo.

Si qu erem os rea liza r u n organ igram a qu e represen te la su m a de los va lores

de dos va riables podríam os rea liza r lo de la s igu ien te m an era :

leer u n da to n u m érico en la va r iable a

leer u n da to n u m érico en la va r iable b

su m ar la s va r iables a y b y el resu ltado a lm acen a rlo en la va r iable c

Page 8: INTRODUCCIÓN A LA ALGORITMIA CAPITULO 2. … · ordenador, la información puede ser constante (conocida en el momento ... Para indicar en un organigrama una sentencia de entrada

8

el organ igram a pa ra represen ta r es ta s ecu en cia de pasos ser ía :

En u n organ igram a n o se su ele in dica r el t ipo de in form ación qu e

con ten drá la s va r iables qu e es tán den tro del s ím bolo de en trada , a s í n o se

especifica qu e la s va r iables a y b son de t ipo n u m érico; n o obs tan te cu an do

rea licem os el program a en C s í s e deberá especifica r con an ter ior idad el t ipo

de va riable qu e vam os a u t iliza r .

Cas i todos los program adores den om in an a la s va r iables de u n a

sen ten cia de en trada "variable s de ent rada", de es ta form a expresan qu e

esa s va r iables son la s qu e con ten drán la in form ación qu e n eces ita el

program a pa ra t raba ja r y s in ella s el program a n o fu n cion a rá . As í en el

ejem plo an ter ior la s va r iables de en trada ser ían a y b; s i n o in trodu cim os

va lores a esa s var iables el program a n o fu n cion a ría pu es to qu e n o ten dría

da tos pa ra rea liza r la su m a . Ya qu e la s va r iables de en trada son tan

im portan tes , el program a n o con tin u a rá su ejecu ción h as ta qu e se h ayan

in trodu cido los va lores qu e dem an dan la s s en ten c ia s de en trada . As í en el

ejem plo an ter ior el program a rea liza r ía los s igu ien tes pasos :

1 . Se deten dría en la pr im era sen ten cia (leer u n da to n u m érico en la var iable

a) y n o con tin u aría h as ta qu e a lgu ien in trodu jera por teclado u n va lor

Page 9: INTRODUCCIÓN A LA ALGORITMIA CAPITULO 2. … · ordenador, la información puede ser constante (conocida en el momento ... Para indicar en un organigrama una sentencia de entrada

9

y a con tin u ación pu lsa ra la tecla "retu rn ".

2 . El orden ador a lm acen a en la va r iable a el va lor qu e se h a tecleado en el

pa so an ter ior .

3 . El orden ador se deten dría de n u evo en la s egu n da sen ten cia (leer u n da to

n u m érico en la var iable b) y n o con tin u a ría h as ta qu e a lgu ien

in trodu jera por teclado u n va lor n u m érico y a con tin u ación pu lsa ra la

tecla "retu rn ".

4 . El orden ador a lm acen a en la va r iable b el va lor qu e se h a tecleado en el

pa so an ter ior .

5 . Fin a lm en te el orden ador rea liza r ía la su m a de los va lores de la s va r iab les

a y b y los a lm acen a ría en la va r iable c .

Es pos ible expresa r va r ia s s en ten cia s de en trada com o u n a sola ; es

decir , s e pu ede pon er u n a ú n ica sen ten cia de en trada con varia s va r iables .

Los pasos qu e rea liza r ía u n orden ador an te es te n u evo a lgoritm o

ser ían los m ism os qu e en el a lgoritm o an ter ior ; es decir :

1 . Se deten dría en la pr im era sen ten cia (leer u n da to n u m érico en la var iable

a) y n o con tin u aría h as ta qu e a lgu ien in trodu jera por teclado u n va lor

y a con tin u ación pu lsa ra la tecla "retu r n ".

Page 10: INTRODUCCIÓN A LA ALGORITMIA CAPITULO 2. … · ordenador, la información puede ser constante (conocida en el momento ... Para indicar en un organigrama una sentencia de entrada

10

2 . El orden ador a lm acen a en la va r iable a el va lor qu e se h a tecleado en el

pa so an ter ior .

3 . El orden ador se deten dría de n u evo en la s egu n da sen ten cia (leer u n da to

n u m érico en la var iable b) y n o con tin u a ría h as ta qu e a lgu ien

in trodu jera por teclado u n va lor n u m érico y a con tin u ación pu lsa ra la

tecla "retu rn ".

4 . El orden ador a lm acen a en la va r iable b el va lor qu e se h a tecleado en el

pa so an ter ior .

5 . Fin a lm en te el orden ador rea liza r ía la su m a de los va lores de la s va r iables

a y b y los a lm acen a ría en la va r iable c .

Observa qu e la ejecu ción del organ igram a es la m ism a , a s í pu es es lo

m ism o expresa r la lectu ra de in form ación en va ria s va r iables a t ravés de u n a

ú n ica sen ten cia de en trada qu e expresa r u n a sen ten cia d is t in ta pa ra cada

va riable.

Decíam os qu e cu an do u n orden ador ejecu ta u n a sen ten cia de en trada

"espera" a qu e se in trodu zca u n va lor . Pero, ¿ Cóm o sabe m os cuando e l

ordenador e s tá e sperando a que se in troduzca un valor? . Norm a lm en te el

orden ador presen ta u n s ím bolo en pan ta lla qu e in dica qu e es tá esp eran do a

qu e se in trodu zca u n va lor ; es decir , es tá deten ido en u n a sen ten cia de

en trada . Es te s ím bolo va ría de u n os len gu a jes de program ación a otros .

Cu an do apa rece es te ca rácter in dica qu e es tá en u n a sen ten cia de en trada

esperan do a qu e el u su a rio teclee a lgú n va lor .

Cu an do el ca rácter - apa rece en pan ta lla ya sabem os qu e el orden ador

es tá esperan do a qu e dé u n va lor , pero ¿ Cóm o sabe e l usuario de l

program a qué valor t iene que dar? En el program a pa ra su m ar el va lor de

dos va riables es fácil s aber qu é va lor es tá p id ien do el orden ador: cu an do

apa rezca el pr im er - es ta rem os dan do el va lor del pr im er su m an do y cu an do

Recuerda que : cu an do se ejecu ta u n a sen ten cia de en trada , el orden ador

det ien e su ejecu ción y n o con tin ú a h as ta qu e se h aya in trodu cido por

teclado u n va lor y pu lsado la tecla "retu rn " (tam bién den om in ada "en ter" ó

"in tro").

Page 11: INTRODUCCIÓN A LA ALGORITMIA CAPITULO 2. … · ordenador, la información puede ser constante (conocida en el momento ... Para indicar en un organigrama una sentencia de entrada

11

apa rezca el s egu n do - es ta rem os dan do el va lor a l s egu n do s u m an do. En la

pan ta lla del orden ador apa recería :

Desgraciadam en te los program as n o son tan sen cillos y t ien en u n a

gran can tidad de sen ten cia s de en trada y a m en u do cu an do apa rece u n - n o

sabem os qu é va lor debem os da r o pa ra qu é lo n eces ita el program a . Pa ra

evita r es to todos los program adores profes ion a les pon en u n texto in dica t ivo

qu e apa rece an tes del ca rácter - (es ta acción se den om in a docum entar la

entrada).

As í pa ra el ca so de la su m a de dos va ria bles debería a pa recer u n texto

in dica t ivo an tes de cada s ím bolo - y la pan ta lla qu eda ría com o s igu e:

La form a de expresa r es to m edian te organ igram as es m u y fácil,

s en cillam en te pon drem os an tes de la va r iable el texto qu e qu erem os qu e

apa rezca en cerrado en tre doble com illa s , a con tin u ación u n a com a y

despu és el n om bre de la va r iable don de deseam os qu e se a lm acen e el va lor .

La figura in dica la represen tación en el organ igram a .

_ 5

_ 6

Introduce el primer sumando _ 5 Introduce el segundo sumando _ 6

Page 12: INTRODUCCIÓN A LA ALGORITMIA CAPITULO 2. … · ordenador, la información puede ser constante (conocida en el momento ... Para indicar en un organigrama una sentencia de entrada

12

Los pasos qu e rea liza r ía el orden ador an te los or gan igram as de la

figu ra ser ían los m ism os qu e los an ter iores con la d iferen cia de qu e en lu ga r

de apa recer u n s ím bolo - cu an do ten em os qu e in trodu cir u n va lor en la

va r iable apa rece el texto qu e precede a la va r iable y el s ím bolo -.

Recuerda que : el ca rácter - (tam bién den om in ado cu rsor) in dica qu e el

orden a dor es tá esperan do por u n a in form a ción . Todos los progra -

m adores profes ion a les su elen pon er u n texto an tes de la va r ia ble de

en trada pa ra ten er s iem pre referen cia s du ran te la ejecu ción del

progra m a de qu é in form a ción debe su m in is tra r a l orden ador el u su a rio.

Page 13: INTRODUCCIÓN A LA ALGORITMIA CAPITULO 2. … · ordenador, la información puede ser constante (conocida en el momento ... Para indicar en un organigrama una sentencia de entrada

13

2 .2 . Representac ión algorítm ica de las sentenc ias de salida.

Pa ra represen ta r a lgorítm icam en te u n a sen ten cia de sa lida se n eces ita (a l

igu a l qu e en la s sen ten cia s de en trada ) el s ím bolo qu e represen ta la

s en ten cia y la in form ación qu e se va a en via r fu era del program a . El s ím bolo

qu e represen ta u n a sen ten cia de sa lida es el qu e m u es tra la figura nº 3 .6 . y

la in form ación qu e apa rece den tro del s ím bolo es la qu e se en via rá fu era del

program a .

La in form ación qu e se pu ede en via r fu era del program a (por ejem plo a la

pan ta lla ) pu ede ser cu a lqu ier t ipo de expres ión . As í la in form ación pu ede ser

u n a va riable, en cu yo caso se visu a liza rá el con ten ido de la m ism a ; pu ede

ser u n a con s tan te o u n a com bin ación de am bas

Las sen ten cia s de sa lida son im portan tes pu es to qu e n os perm iten ver los

resu ltados de los program as . Por ejem plo, el organ igram a pa ra rea liza r la

su m a de dos va lores del apa rtado an ter ior rea liza r ía la su m a y su va lor lo

Page 14: INTRODUCCIÓN A LA ALGORITMIA CAPITULO 2. … · ordenador, la información puede ser constante (conocida en el momento ... Para indicar en un organigrama una sentencia de entrada

14

a lm acen a ría en la var iable c pero el u su ario n o vería el resu ltado de la su m a

por pan ta lla , s in em bargo s i a l fin a l del a lgoritm o le añ adim os u n a sen ten cia

de sa lida pa ra ver por pan ta lla el con ten ido de la va r iable c , en ton ces s í

podríam os ver el resu ltado de la su m a . Las figuras nº 3 .8 . y 3 .9 . m u es tra

es ta s itu ación .

El n u evo a lgoritm o ser ía el s igu ien te:

leer u n da to n u m érico en la va r iable a

leer u n da to n u m érico en la va r iable b

su m ar la s va r iables a y b y el resu ltado a lm acen a rlo en la va r iable c

visualizar e l c onten ido de la variable c

La m a yoría de la s s en ten cia s de sa lida se em plean pa ra qu e el u su a rio pu eda

ver la in form a ción con la qu e es tá t raba jan do el program a , n o obs tan te otra s

s en ten cia s s irven pa ra en via r in form ación de u n program a a otro o en tre

Page 15: INTRODUCCIÓN A LA ALGORITMIA CAPITULO 2. … · ordenador, la información puede ser constante (conocida en el momento ... Para indicar en un organigrama una sentencia de entrada

15

diversa s pa r tes de u n program a . Las va riables qu e es tán en u n a sen ten cia

de sa lida se la s su ele den om in a r variable s de salida . En n u es tro ejem plo c

es u n a va riable de sa lida .

Al igu a l qu e la s s en ten cia s de en trada , es pos ible expresa r va r ia s

s en ten cia s de sa lida en u n a sola , a s í s i deseá ram os escr ib ir el con ten ido de

la s va r iables a, b y c lo podríam os expresa r en u n solo s ím bolo a lgorítm ico.

Recuerda que : Las sen ten cia s de sa lida s irven pa ra en via r in form ación a l

exter ior del program a y su represen tación en u n organ igram a es tá

com pu es ta por u n s ím bolo qu e represen ta la s en ten cia de sa lida y den tro del

s ím bolo la in form ación qu e se va a en via r a l exter ior d el program a .

An ter iorm en te se decía qu e la s sen ten cia s de sa lida podían traba ja r

con ju n tam en te con in form ación va riable y con s tan te, es te h ech o se su ele

u t iliza r pa ra docu m en ta r la s a lida . Si u n program a t ien e m u ch as sen ten cia s

de sa lida pu ede llega r u n m om en to qu e n o sepam os qu é in form ación es la

qu e apa rece por pan ta lla , por ejem plo a l visu a liza r la va r iable c en el

organ igram a de la su m a apa recería u n va lor determ in ado (por ejem plo el

23), pu ede ser qu e el u su a rio del program a n o sepa a qu é se refiere ese va lor ;

s in em bargo s i en la pan ta lla apa rece:

En es te ca so se d ice qu e la s a lida es tá docu m en tada ; es decir , in dica cu a l es

el or igen del va lor . Es to se pu ede represen ta r a lgorítm icam en te en u n a

m ism a sen ten cia de sa lida , com bin an do la in form ación va riable y con s tan te.

La figura nº expresa los organ igram as em pleados pa ra obten er u n a sa lida

docu m en ta da y s in docu m en ta r . La m ayoría de los program adores s iem pre

docu m en tan la s va riables de sa lida y es u n a práct ica qu e se acon seja qu e

rea lice el lector .

El valor de la suma de a y b es 23

Page 16: INTRODUCCIÓN A LA ALGORITMIA CAPITULO 2. … · ordenador, la información puede ser constante (conocida en el momento ... Para indicar en un organigrama una sentencia de entrada

16

Recuerda que : Las va r iables de sa lida se docu m en tan pa ra qu e en todo

m om en to sepam os el s ign ificado de la in form ación qu e apa rece por

pan ta lla .