Programació fonamental, problemes

Click here to load reader

  • date post

    10-Apr-2015
  • Category

    Documents

  • view

    124
  • download

    11

Embed Size (px)

Transcript of Programació fonamental, problemes

Departament de Llenguatges i Sistemes Informtics a Universitat Politcnica de Catalunya e

Programaci fonamental: problemes o

Sebasti Vila Marta a L'elaboraci d'aquest material ha comptat amb el suport d'un ajut o a la elaboraci de material docent" de la UPC. o

los autores, 1998; Edicions UPC, 1998. Quedan rigurosamente prohibidas, sin la autorizacin escrita de los titulares del "copyright", bajo las sanciones establecidas en las leyes, la reproduccin total o parcial de esta obra por cualquier medio o procedimiento, comprendidos la reprografa y el tratamiento informtico, y la distribucin de ejemplares de ella mediante alquiler o prstamo pblicos, as como la exportacin e importacin de ejemplares para su distribucin y venta fuera del mbito de la Unin Europea.

Hay que cocinar con el mismo espritu con que se habla con los amigos, se lee un buen libro o se hace algo que le gusta a uno mismo. De este modo, el acto de guisar produce una satisfaccin que llega a quien consume ese plato como una o energa positiva." JUAN MARI ARZAK, Cocinar es fcil 1987 a

los autores, 1998; Edicions UPC, 1998.

PrefaciCont la manera d'organitzar tota classe d'pats senzills o d'etiqueta, de calcular e a berenars, sopars, escudelles, cuinats, rostits, salses, llegums, aviram, plats freds, canelons, arrossos, ous fregits, carns, peixos, amanides, escalivades, i diverses maneres de fer els pdings i pastes, i molts consells de prctica i d'utilitat per u a comportar-se elegantment a taula, etc." IGNASI DOMENECH, La Teca 15a ed. 1990

Aquesta col.lecci de problemes est especialment dirigida a aquells alumnes dels cursos bsics o a a de programaci de les escoles i facultats tcniques. o e L'estructura del llibret s'ha dissenyat de manera que la introducci a aquesta matria sigui la o e ms progressiva possible. Al contrari que en moltes de les fonts de problemes de programaci, e o en aquest llibret tamb s'ha incidit en els aspectes relacionats amb l'aprenentatge d'una notaci e o algortmica de caire imperatiu. No per aix, per, s'han oblidat els aspectes ms tradicionals o o e del disseny d'algoritmes. Com a notaci, s'ha escollit la de nida a 7 per raons d'homogenetat. o Pel que fa a aquest aspecte, el llibret est pensat per a un curs fonamentat en l's d'esquemes de a u tractament sequencial. No obstant aix, altres enfocaments ms formals tamb poden treure'n o e e pro t. No fra just atribuir-me la paternitat de tots els problemes. El llibret s un recull de problemes o e de molt diversos autors. A ells cal agrair l'elegncia de molts dels problemes. Se'm fa difcil a citar qui s l'autor de cada un. Alguns provenen d'antigues col.leccions de problemes editades e per companys del Departament. Altres s'han obtingut revisant els arxius d'exmens de cursos a anteriors o b de llibres sobre el tema. Molts s'han inventat ad hoc per al llibret. Totes les fonts e publicades han estat citades a la bibliogra a. Tots ells han estat revisats i els seus enunciats reformats per uni car la notaci i el vocabulari o emprats. Els problemes s'han classi cat en temes genrics per facilitar-ne l's. e u Finalment cal esmentar que aquest recull ho s de problemes per resoldre i no preten ser-ho e

los autores, 1998; Edicions UPC, 1998.

de problemes resolts. Tot i aix, m'ha semblat molt adequat que l'alumne disposi d'algunes o solucions com a model. Per aix s'han resolt i afegit en un darrer captol alguns problemes de o di cultat mitjana.

los autores, 1998; Edicions UPC, 1998.

ndex I

11

ndex I1 Objectes i expressions . . . . . . . . . . . . . . . . . . . . . . . . . . 13 2 Assignaci. Descomposici d'accions . . . . . . . . . . . . . . . . . . . 19 o o 3 Subprogrames . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 4 Cerca i recorregut de sequncies elementals . . . . . . . . . . . . . . . 31 e 5 Estructures de dades . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 6 Problemes de mitjana envergadura . . . . . . . . . . . . . . . . . . . . 43 7 Problemes resolts . . . . . . . . . . . . . . . . . . . . . . . . . . . . 557.1 Manufactures del Cardoner 7.1.1 Enunciat . . . . . 7.1.2 Soluci proposada . o 7.2 La lliga de futbol . . . . 7.2.1 Enunciat . . . . . 7.2.2 Soluci proposada . o 7.3 GroenPaten Bank . . . 7.3.1 Enunciat . . . . . 7.3.2 Soluci proposada . o 7.4 Experiments PSI . . . . 7.4.2 Enunciat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 55 56 63 63 64 67 67 69 75 75

los autores, 1998; Edicions UPC, 1998.

12

Programaci fonamental: problemes o

7.4.2 Soluci proposada . . . . . o 7.5 Facturaci d'una empresa telefnica o o 7.5.2 Enunciat . . . . . . . . . 7.5.2 Soluci proposada . . . . . o

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

75 83 83 83

Bibliogra a . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87

los autores, 1998; Edicions UPC, 1998.

Objectes i expressions

13

1 Objectes i expressionsPer elaborar un plat s'han de tenir preparats prviament els ingredients necessaris, e nets i tallats, perqu si s'ha de procedir alhora a la pesada i medici dels components e o i a la seva cocci, s molt possible que ens descuidem un detall o que alguna cosa o e ens surti malament." MONTSERRAT SEGU, Cuinar s senzill 1989 I e

1.1 Decidiu quines d'aquestes sn declaracions d'objectes correctes i quines no. Justi queuo ho.a

var

fvarb

t ; p ; q : enter

var

fvarc

l ; enter : real

var

fvard

l : boolea m ; q ; l : real

const

fconst

pi : enter = 3

Objectes i expressions. Assignaci. Descomposici d'accions. Subprogrames. Cerca i recorregut de seqncies elementals. Estructures de dades. Problemes de mitjana envergadura. Problemes resolts.

14

Programaci fonamental: problemes o

e

const cert : enter = 1 fconst varmida : real = 3:2

f

fvarg

var

fvarh

grandaria ; factorQ : real factorL : enter

const

fconsti

m 2 : real = 4

const

fconst

Revision : 1:24

1.2 Vegeu quines d'aquestes expressions sn correctes sintcticament i quines no. Interpreteu o a tot identi cador com a variable o constant segons convingui.a b c d e f g h i a + b + 4:0 3=2 + f a l 3 , ,j 4 f 3 b i c noa 1 div 2 + q 3 , q a ; z 6 , sqrt32:0 + l 'a' + 27 mod 2 777:0012 div 46 2 div ,f 'm'

los autores, 1998; Edicions UPC, 1998.

Objectes i expressions

15

j k l m

0 , , , , , ,2 , , , , , , 0

no fals o cert no fals = m cert fals q cert; cert; 3 6; m 3

1.3 Vegeu quines d'aquestes expressions sn correctes sintcticament i semntica. Avalueuo a a ne les que ho siguin:a

const

pi k + 1:05 b

fconst const

pi : real = 3:1415 k : enter = 3

fconst cert o epsilon 2:0 , ta 1:002c

epsilon : real = 4:0031 ta : real = 3:56

var

fvar ,a mod b + 2 div 4 zd

a ; b : enter z : real

var

q i nor o r i mida + 5 7 e

fvar

q ; r ; t : boolea mida ; lloc : enter

const

fconst

pi : real = 3:141592 lletraA : caracter = 'A'

los autores, 1998; Edicions UPC, 1998.

16

Programaci fonamental: problemes o

x ; y ; z : real fvar pi 2:36 pi pi o lletraA = 'A' o x + 3:0 siny

var

1.4 Escriviu les expressions seguents :a Donada una variable a : caracter trobeu una expressi que s'avalui a cert ssi a o s una minscula. e u b Donada una variable z : real trobeu una expressi que s'avalui a cert ssi succeeix o que z 2 1:0; 9:04 . c Donada una variable v : boolea trobeu una expressi que s'avalui a cert ssi v o cont el valor cert. e d Trobeu una expressi que calculi el mateix valor que l'expressi matemtica o o a a +log x . Cal declarar aquells objectes utilitzats. b e Si q s una variable de tipus caracter, quina expressi permetria classi car q com e o a carcter alfabtic? a e f Si k s una constant de tipus enter i r s una variable de tipus real, quina e e expressi s'avaluaria a un real que s k vegades r? o e1

1.5 Apliqueu el clcul de proposicions per simpli car aquestes expressions booleanes: aa b c d e f

nonoa = 7 o 4 l = l 4 a = b o no'A' 'L' noa 5 i a 2 b = nob = b 6 no3 a i no4 = 6 o fals b = q i no r o 7 4a =7ib n f x 2:9 o a mod q = 3 a = 8:9 i nos t 6:7 b 9:0 i l 5:41 q t i t = pi

1.6 Complementeu aplicant la negaci les expressions booleanes seguents i simpli queu-les: oa b c d

los autores, 1998; Edicions UPC, 1998.

Objectes i expressions

17

1.7 Simpli queu les proposicions seguents desprs d'haver-les complementat: ea b c d e f g

P ^ Q P P _ Q ^ :Q _ R :P _ Q ^ Q Q ^ R ^ P _ :R _ S P Q ^ Q P P Q R _ P P _ Q ^ P R _ P Q

1.8 Expresseu, usant un predicat i les funcions auxiliars necessries, els enunciats que hi ha a a continuaci: oa L'existncia d'un enter parell que s mltiple de 13. e e u b El fet que, donats dos reals qualssevol, sempre n'existeix un tercer que rau entr