scieee Open visual document viewer

Complements de programació i bases de dades. Apunts

Franquesa Niubó, Marta,Roselló Saurí, Llorenç

Full text

EST CPBD A p u N T s 000 000 000 DIPLOMATURA D'ESTADÍSTICA COMPLEMENTS DE PROGRAMACIÓ I BASES DE DADES LLENGUATGE ALGORÍSMIC I ESTRUCTURES DE DADES LINEALS (PART 1) Ma a F anquesa Niubó Llo en� Roselló Sau í ' , UPC FACULTAT DE MATEMATIQUES I ESTADISTICA UNIVERSITAT P0LITECNICA DE CATALUNYA Biblio eca 111111111111111111111111111111111111111111111111111111111111 1400249382 ...... COMPLEMENTS DE PROGRAMACIÓ I BASES DE DADES Llengua ge Algo ísmic Es uc u es de Dades Lineals (I) Apun s Ma a F anquesa Niubó Llo en� Roselló Sau í Depa amen de Llengua ges i Sis emes In o ma.�ics 7 d'oc ub e de 1996 1 In oducció Aques apun s o men pa d 'una se ie de documen s que ani án so in al lla g del cu s. Aques a p ime a pa cons a de : •Un b eu esum de la no ació algo ísmica que cal u ili za pe esold e els p oblemes. J un a.mb el llengua ge algo ísmic es p esen a la a.ducció llengua ge PASCAL. •La pa de Modula i zació la qual s 'ha adui al Tu boPASCAL (no al PASCAL s anda d) u ili zan com a eina la uni . •Un apa a dedica a }'es uc u a de dades lineal CUA. 2 Llengua ge A)go ísmic En a.ques capí ol es p esen a. un esum de la. no a.ció del llengua ge a.lgo ísmic i la. se a aducció al llengua. ge PASCAL. No es p e én e una exposició exhaus i a dels llengua. ges sino un b eu esum dels ma eixos. algo i me N omAlgo isme usos de inicio de cons an s de inicio de ipus decla acio de a iables sen encies algo i me modul NomModul especi icació usos de/inició de con an s de inició de ipus cap ale es de subp og ames especi icació implemen ació implemen ació de subp og ames implemen ació de subp og ames p i a s implemen ació modul 1 p og am NomAlgo isme usos de inició de cons an s de inició de ipus decla ació de a iables begin sen encies end. accions_ uncions uni NomModul in e ace usos de/inició de cons an s de/inició de ipus cap9le es de subp og ames implemen a ion implemen ació de subp og ames implemen ació de subp og ames p i a s begin end. usos::= usa noms moduls usa de/inició de cons an s::= cons N omCons an : N omTipus = Exp essioCons an cons de inició de i pus::= ipus NouTipus ipus NouTipus:= NomNouTipus = Tipus_elemen al NomNouTipus = (nl, n2, .. .) uses ( noms moduls )¡ ( és una llis a sepa ada pe comes) cons NomCons an = Exp essióCons an ype NouTipus NomNouTipus = aula {1 .. n1,1 .. n2, ... J de NomTipus N omN ouTipus = upla NomCampl, ... : NomTipus upla Tipus_elemen al:= en e , eal, ca ac e , boolea Implemen ació en PASCAL: NomNouTipus = Tipus_elemen al NomNouTipus= (n1, n2, ... ) NomNouTipus=a ay[1. .n1,1. .n2, .... ] o NomTipus NomNou Tipus= eco d NomCamp1,NomCamp2, ... : NomTipus¡ end; Tipus_elemen al:=in ege , eal, cha , boolean 2 a decla ació de a iables::= a Nom Va l, Nom Va 2, ... : NomTipus; NomVa l,N omVa 2, ... : NomTipus a cap9ale es de subp og ames::= accio NomAcció( Pa ame esFo malsAcció) p ocedu e NomAccio(Pa ame esFo malsAcció) uncio NomFunció( Pa ame esFo malsFunció ) e o na NomTipus unc ion N omFunció(Pa ame esFo malsFunció): Nom Ti pus cap9ale a de Subp og ames p i a s::= accio p i ada NomAcció( Pa ame esFo malsAcció) uncio p i ada NomFunció( Pa ame esFo malsFunció) e o na NomTipus � Pascal � Pascal (PASCAL: els subp og ames p i a s es de ineixen dins de la pa d'implemen ació de les uni a s sense indica la se a p i aci a ) Pa ame esFo malsAccio:: = en Nom Va : NomTipus en /so Nom Va : NomTipus so Nom Va : NomTipus Pa ame esFo malsFuncio:: = en Nom Va : NomTipus Sen encies::= assignació al e na i a o condicional i e a i a_M en e i e a i a_Fe c ida a subp og ama assignació : : = Nom Va := exp essió 3 Nom Va : Nom ipus a Nom Va : Nom ipus a Nom Va : Nom ipus En llengua ge algo ísmic es conside en co ee es assignacions en e aules o uples semp e que hi hagi conco dancia de ipus. e uncio Esbuidcua(en c: cua) e o na booleaes Esbuidacua := (c.cmp = O) uncio uncio Esplenacua( en c: cua) e o na boolea. es Explenacua. := ( cmp = max) uncio implemen acio modul 4 Es ació de ens Ma sens El cap de man enimen de l' es ació de e oca il de Ma sens ens enca ega que li dissenyem un algo isme que alidi les maniob es que p e eu pe al de o ma els ens que li calen. Pe po a a e me les maniob es l 'es ació de Ma sens només disposa d 'una ia de maniob es que pe un ex em acaba en un ope i pe 1 'al e es a conec ada a una ia d 'en ada i a una al a de so ida. Una maniob a es de ineix com una seqüencia de codis de mo imen al com {EESEESSS} que s'aplica a un conjun dona d'iden i icado s o dena s de agó al com {idl, id2, id3, id4}. Els possibles mo imen s E i S signi iquen espec i amen en a i eu e un agó de la ía de maniob es de mane a que, la seqüencia indicada, quan s'aplica al conjun de agons dona , p odueix el nou conjun {id2, id4, id3, idl }. U na seqüencia de mo imen s és admisible si con é an s codis E com S, o s els mo imen s indica s poden po a -se a e me i el en o ma con é o s els agons dona s. Cada seqüencia de mo imen s s'acaba amb un símbol especial. La in o mació associada a un agó cons a d'un nomb e na u al (iden i icado ) i d'un codi del conjun {PP, PS, CA, CO} que indica el ipus de ca ega del agó. Cada seqüencia de agons s'acaba amb un símbol especial. Es deman que: •lmplemen is un modul pe a ges iona una cua de agons:CUAVAGO •lmplemen is un modul pe a ges iona una pila de agons:PILAVAGO •Usan les es uc u es de dades implemen ades, dissenya l'algo isme de ini com segueix: unció Maniob a_ alida e o na boolea és { e o na CERT si la maniob a és alida i FALS en cas con a i } 7 Q<éld J ..lCS� 1