Download - Bakgrunn - UiO

Transcript
Page 1: Bakgrunn - UiO

INF2810eksamen2017

1/16

Bakgrunn

EksameniINF2810:Mandag,29.mai2017,14:30–18:30.Ingenhjelpemidler.Idetteoppgavesettetskaldubesvaretoavoppgaveneioppgavesettetmeddigitalhåndtegning(oppgave2.2og4.1).Dusvarerpådissetooppgavenepåskissearkdufårutdelt.Deteranledningtilåbrukeflerearkperoppgave.Seinstruksjonsarkpåpult.DeterIKKEanledningtilåbrukedigitalhåndtegningpåandreoppgaverennoppgave2.2og4.1.Detblirikkegittekstratidforåfylleutinformasjonsboksene(engangskoder,kand.nr.o.l.)påskisseark.Vianbefalerålesegjennomheleoppgavetekstenførdubegynner.Hvisdufølerdumanglerinformasjonforåløseenoppgave,gjørdineegneantakelserogredegjørfordem.AllestederderdetbesomkodeforventesiutgangspunktetScheme(ihenholdtilR5RSslikviharbrukthelesemesteret),mendersomduavenellerannengrunnstårfastnoestedogforeksempelikkehuskerspesifikkScheme-syntaksellerprosedyrenavnerdetbedreomduskriverpseudokodemedkommentarerenningenting.

2.1 Listestruktur

Gittdefinisjoneneavz1ogz2,visverdienedeerbundettil,likslikdevilleblittvistpåREPL'et.

Skrivdittsvarher...

Makspoeng:3

Page 2: Bakgrunn - UiO

INF2810eksamen2017

2/16

2.2 Boks-og-peker–diagrammer

Gittdefinisjoneneavz1ogz2over(sammesompåforrigeoppgave),tegnboks-og-peker–diagrammer(påegetskisseark)somviserlistestruktureneforhveravdem.Tegnogsåetboks-og-peker-diagramtilforz2somviserhvastrukturenbliretterdetfølgendekalletpåset-car!.

Seinstruksjonforutfyllingavskissearkpåpult.

Makspoeng:8

Page 3: Bakgrunn - UiO

INF2810eksamen2017

3/16

2.3 Listerekursjon

Definerenrekursivprosedyredeep-countsomtarsomargumenteretsymbolsymogenpotensieltnøstetlistelst,ogreturnererantallforekomsteravsymboletilisten.Kalleksempel:

Skrivdittsvarher...

Makspoeng:6

1

Page 4: Bakgrunn - UiO

INF2810eksamen2017

4/16

2.4 Prosess

Hvaslagstypeprosessvildinimplementasjonenavprosedyrendeep-countgenerereforkalleksemplet?

Skrivdittsvarher...

Words:0

Makspoeng:3

Introduksjon:transform-if

Idenesteoppgaveneskalduskrivenoenforskjelligeversjoneravenenkelprosedyresomviskalkalletransform-if.Argumenteneskalværeenprosedyretest,enprosedyretrans,ogenlisteseq.Returverdienskalværeenlistedertransharblittanvendtpåhvertelementiargument-listaseqsomreturnerersantfortest,ellerersammeelementsomiseqdersomtestreturnererusant.Kalleksempler:

Page 5: Bakgrunn - UiO

INF2810eksamen2017

5/16

3.1 Rekursivtransform-if

Skrivenrentfunksjonellversjonavtransform-ifbasertpåvanligrekursjon(altsåikkehalerekursjon).Skrivdittsvarher...

Makspoeng:3

1

Page 6: Bakgrunn - UiO

INF2810eksamen2017

6/16

3.2 Sekvensbaserttransform-if

Skrivenrentfunksjonellversjonavtransform-ifbasertpåhøyereordenssekvensoperasjoner(detergreitåbenyttesegavinnebygdeprosedyrerher).Skrivdittsvarher...

Makspoeng:4

1

Page 7: Bakgrunn - UiO

INF2810eksamen2017

7/16

3.3 Halerekursivtransform-if

Skrivenrentfunksjonellversjonavtransform-ifbasertpåhalerekursjon.Skrivdittsvarher...

Makspoeng:5

1

Page 8: Bakgrunn - UiO

INF2810eksamen2017

8/16

3.4 Destruktivtransform-if

Skrivenikke-funksjonellversjontransform-if!somdestruktivtmodifisererlisteargumentetsitt.Skrivdittsvarher...

Makspoeng:4

1

Page 9: Bakgrunn - UiO

INF2810eksamen2017

9/16

3.5 Strømbaserttransform-if

Skrivenstrømversjonavløsningendinideloppgave3.1,altsådenfunksjonelleversjonenavtransform-ifsomvarbasertpåvanligrekursjon.Strømversjonenskaltaenstrømavelementersomargumentogreturnereennystrømavdemuligenstransformerteelementene.Dukanherantaatgrensesnittetforstrømmerslikviharbruktdetikursetertilgjengelig,dvs.cons-stream,stream-carogstream-cdr,the-empty-streamogstream-null?.Skrivdittsvarher...

Makspoeng:4

1

Page 11: Bakgrunn - UiO

INF2810eksamen2017

11/16

4.1 Omgivelsesdiagram

Herskalvijobbemedomgivelsesmodellenforevaluering.Tegnetomgivelsesdiagram(påegetskisseark)somviserallerelevanterammerogbindingeretteratalleuttrykkeneifølgendesekvensharblittevaluert.

Seinstruksjonforutfyllingavskissearkpåpult.

Makspoeng:12

Page 12: Bakgrunn - UiO

INF2810eksamen2017

12/16

5.1 Prosedyrebasertepar

AltiSchemekanreduserestillambdakalkyleogprosedyrer.Skrivenimplementasjonavcons,carogcdrsomerprosedyrebasert,dvs.representererselvecons-paretsomenprosedyre.Skrivdittsvarher...

Makspoeng:8

5.2 Debugging

Herskalduskriveenprosedyredebugsomlarossfåskrevetutargumentenesomengittprosedyrekallespå.Dennefunksjonalitetenskalvikunneskruavogpå,ogviskalkunnefølgemedpåvilkårligmangeprosedyrersamtidig.Sekalleksemplerunder.Prosedyrendebugskaltasomargumenterenbeskjedactionogenprosedyreproc.Argumentetactionskalentenværebeskjeden'traceeller'untrace.Dersombeskjedener'tracesåreturneresennyprosedyresomskriverutargumentlistenførdenopprinneligeprosedyrenkalles.Dersombeskjedener'untracereturneresdenopprinneligeprosedyren.Huskatdeninnebygdeprosedyrendisplaylardegskriveut.Prosedyrennewlineskriverutlinjeskift.Dukanogsåantaatvihartilgjengeliggrensesnittetforåjobbemedtabellersomvihargjennomgåttpåforelesningogogsåbrukteienavobligene.Detteinkluderermake-tablesomreturnererenny,tomtabell,insert!somtarentabell,ennøkkelogenverdiogleggertilitabellen,oglookupsomtarennøkkelogentabellogreturnererverdien(dersomoppslagetfinnes).Kalleksempler:

1

Page 13: Bakgrunn - UiO

INF2810eksamen2017

13/16

Skrivdittsvarher...

Makspoeng:15

1

Page 14: Bakgrunn - UiO

INF2810eksamen2017

14/16

6.1 Strømmer

Denneoppgavenberomsvarpåflerespørsmål,passpåatdusvarerpåalt.Viantarherathelegrensesnittetforåjobbemedstrømmerslikviharbruktdetikurseterforhåndsdefinertogtilgjengelig.Itilleggdefinerervienprosedyreadd-streamssamttoglobalevariablersomfølger:

Forklarmedetparsetningerhvordanadd-streamsfungereroghvorfordetkanværeveldefinertåhaenrekursivprosedyreutenbasistilfelle.Sesånøyepåuttrykkenesombindestilhhv.onesogintegers.Hvablirresultatetnårvievaluereruttrykketsombindestilones?Hvablirresultatetnårvievaluereruttrykketsombindestilintegers?Tenktdegomtoganger,ogbegrunnkortbeggesvarenedine.Hvavilleblittkonsekvensenomvibyttetutcons-streammedconsidefinisjonenavones?

Skrivdittsvarher...

Words:0

Makspoeng:7


Top Related