EKSAMENSOPPGAVE. Adm.bygget, rom K1.04 og B154 Ingen. Vil det bli gått oppklaringsrunde i eksamenslokalet? Svar: JA / NEI Hvis JA: ca. kl.

Like dokumenter
EKSAMENSOPPGAVE. Vil det bli gått oppklaringsrunde i eksamenslokalet? Svar: NEI

EKSAMENSOPPGAVE. Vil det bli gått oppklaringsrunde i eksamenslokalet? Svar: JA / NEI Hvis JA: ca. kl. 10

EKSAMENSOPPGAVE. INF-1101 Datastrukturer og algoritmer. Adm.bygget, rom K1.04 og B154 Ingen

EKSAMENSOPPGAVE. INF-1100 Innføring i programmering og datamaskiners virkemåte. Ingen. Elektronisk (WiseFlow) Robert Pettersen

EKSAMENSOPPGAVE. INF-1400 Objektorientert Programmering. Dato: Tirsdag 23. mai Klokkeslett: Kl 17:00-21:00. Adm. bygget, Aud.

EKSAMENSOPPGAVE. INF-1100 Innføring i programmering og datamaskiners virkemåte. Teorifagb, hus 3, og og Adm.bygget, Aud.max og B.

EKSAMENSOPPGAVE. INF-1400 Objektorientert Programmering. Dato: Torsdag 29. september Klokkeslett: Kl 09:00-13:00.

EKSAMENSOPPGAVE. Vil det bli gått oppklaringsrunde i eksamenslokalet? Svar: JA / NEI Hvis JA: ca. kl. 10:30

EKSAMENSOPPGAVE. Ingen. Robert Pettersen. Eksamen i: INF Innf. i progr. og datam. virkem. Dato: Tirsdag 5. desember 2017

EKSAMENSOPPGÅVE. Kalkulator, Rottmanns tabellar og 2 A4 ark med eigne notater (4 sider).

EKSAMENSOPPGAVE. Alle skrevne og trykte. Godkjent kalkulator.

EKSAMENSOPPGAVE. NB! Det er ikke tillatt å levere inn kladd sammen med besvarelsen

EKSAMENSOPPGAVE. Vil det bli gått oppklaringsrunde i eksamenslokalet? Svar: JA Hvis JA: ca. kl.10:00 og 12:00

EKSAMENSOPPGÅVE. Kalkulator, 2 ark (4 sider) med eigne notater og Rottmanns tabeller. Ragnar Soleng

EKSAMENSOPPGAVE. : INF-1400 Objektorientert programmering. Oppgavesettet er på 5 sider inklusiv forside

EKSAMENSOPPGAVE. Eksamen i: INF-1400 Objektorientert programminering Dato: Mandag 26. mai 2014 Tid: Kl 09:00-13:00 Sted: Adm.

EKSAMENSOPPGAVE. KRAFT I og II Hall del 2 Kraft sportssenter Ingen

EKSAMENSOPPGAVE. 4 (1+3) Det er 12 deloppgaver (1abc, 2abcd, 3abc, 4ab) Andrei Prasolov

EKSAMENSOPPGAVE. To dobbeltsidige ark med notater. Stian Normann Anfinsen

EKSAMENSOPPGAVE. GEO-2010 Marine geofag

EKSAMENSOPPGAVE / EKSAMENSOPPGÅVE

EKSAMENSOPPGAVE. Vil det bli gått oppklaringsrunde i eksamenslokalet? Svar: JA / NEI Hvis JA: ca. Kl 10.00

EKSAMENSOPPGAVE. Godkjent kalkulator; Rottmanns tabeller; To A4 ark egne notater (håndskrevne, trykte, eller blandede).

EKSAMENSOPPGAVE. Professor Anders Schomacker

EKSAMENSOPPGÅVE. Mat-1005, Diskret matematikk. Godkjent kalkulator, Rottmanns tabellar og 2 A4 ark med eigne notater (4 sider).

EKSAMENSOPPGAVE. linjal, kalkulator (hva som helst typ)

EKSAMENSOPPGAVE STA «Tabeller og formler i statistikk» av Kvaløy og Tjelmeland. To A4-ark/ 4 sider med egne notater. Godkjent kalkulator. Rute.

EKSAMENSOPPGAVE. Adm.bygget, rom B154 2 ark med egne notater (4 sider) Godkjent kalkulator Rottman. Matematisk formelsamling

EKSAMENSOPPGAVE. Linjal, kalkulator (hva som helst typ)

EKSAMENSOPPGAVE. linjal. Jiri Konopasek

EKSAMENSOPPGAVE. «Tabeller og formler i statistikk» av Kvaløy og Tjelmeland. To A4-ark/ 4 sider med egne notater. Godkjent kalkulator.

EKSAMENSOPPGAVE. Kontaktperson under eksamen: Steffen Viken Valvåg Telefon:

EKSAMENSOPPGAVE. KJE-1001 Introduksjon til kjemi og kjemisk biologi

EKSAMENSOPPGAVE. Kalkulator «Huskelapp» -A4 ark med skrift på begge sider Enkel norsk-engelsk/engelsk-norsk ordbok

EKSAMENSOPPGAVE / EKSAMENSOPPGÅVE

EKSAMENSOPPGAVE Njål Gulbrandsen / Ole Meyer /

EKSAMENSOPPGAVE. linjal, kalkulator (hva som helst typ) Vil det bli gått oppklaringsrunde i eksamenslokalet? Svar: JA Hvis JA: ca. kl.

EKSAMENSOPPGAVE. Fys-1002 Elektromagnetisme. Adm.bygget B154 Kalkulator med tomt dataminne, Rottmann: Matematisk formelsamling

UNIVERSITETET I OSLO

EKSAMENSOPPGAVE. ü Kalkulator med tomt dataminne ü Rottmann: Matematisk Formelsamling. rute

EKSAMENSOPPGAVE. MNF-6002 Videreutdanning i naturfag for lærere, Naturfag trinn 2. Kalkulator Rom Stoff Tid: Fysikktabeller (utskrift)

EKSAMENSOPPGAVE. Kalkulator Rom Stoff Tid: Fysikktabeller (Bok/utskrift fra bok)

EKSAMENSOPPGAVE. Kalkulator «Huskelapp» -A4 ark med skrift på begge sider. Enkel norsk-engelsk/engelsk-norsk ordbok

Løsningsveiledning for eksamensoppgaven i INF

EKSAMENSOPPGAVE. linjal, kalkulator (hva som helst typ)

EKSAMENSOPPGAVE Bjarte Aarmo Lund

UNIVERSITETET I OSLO

EKSAMENSOPPGAVE. Kalkulator, transportør (vinkelmåler), linjaler, fargeblyanter. Millimeterpapir deles ut.

EKSAMENSOPPGAVE. Adm.bygget, Aud.max. ü Kalkulator med tomt dataminne ü Rottmann: Matematisk Formelsamling. rute

EKSAMENSOPPGAVE. To dobbeltsidige ark med notater. Stian Normann Anfinsen

EKSAMENSOPPGAVE Georg Elvebakk NB! Det er ikke tillatt å levere inn kladd sammen med besvarelsen

EKSAMENSOPPGAVE STA-2004.

EKSAMENSOPPGAVE I INF-1100

Etter uke 6 skal du. Introduksjon til objektorientert programmering. Hva skjedde ~1967? INF1001. Grunnkurs i objektorientert programmering

EKSAMENSOPPGAVE Bokmål og Nynorsk

UNIVERSITETET I OSLO

EKSAMENSOPPGAVE. B154 «Tabeller og formler i statistikk» av Kvaløy og Tjelmeland. To A4-ark (4 sider) med egne notater. Godkjent kalkulator.

Universitetet i Bergen Det matematisk-naturvitenskapelige fakultet Institutt for informatikk

EKSAMENSOPPGAVE. Maria Folkesson: Magne Petter Sollid: Dagfinn Husjord:

EKSAMENSOPPGAVE. Kalkulator med tomt minne

UNIVERSITETET I OSLO

EKSAMENSOPPGAVE. FYS 2000, Kvantemekanikk Dato: 7. Juni 2017 Klokkeslett: 9:00-13:00 Sted: Tillatte hjelpemidler: rute.

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO

EKSAMENSOPPGAVE. 7 (6 sider med oppgaver + 1 side med formler)

UNIVERSITETET I OSLO

EKSAMENSOPPGAVE STA-1001.

GJENNOMGANG UKESOPPGAVER 9 TESTING

En snarvei til INF2100

Prøveeksamen IN1000. IN Prøveeksamen. Dato november 2017 Tid 12:30-12:00 Alle trykte og skrevne hjelpemidler er tillatt.

Hvorfor objektorientert programmering? Objektorientert programmering i Python: Introduksjon. Læringsmål uke 7. Undervisning og pensum IN1000

INF1000 Eksamen 2014 (modifisert)

EKSAMENSOPPGAVE. - Ett A4 ark med selvskrevne notater (begge sider) - Kalkulator. - Molekylbyggesett. Rute

EKSAMEN. Objektorientert programmering

Hvorfor objektorientert programmering?

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet

Faglærerne prøver å besøker eksamenslokalet mellom klokka 15 og 16 for å oppklare eventuelle uklarheter og feil i oppgaveteksten.

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO

Etter uke 9 skal du. Introduksjon til objektorientert programmering. Innhold. Klasser som abstraksjoner

Eksamensoppgaver 2014

EKSAMENSOPPGAVE. Adm. bygget B154. Enkel lommeregner. Rute. Dr. Maarten Beerepoot

Informasjon Eksamen i IN1000 og IN1001 høsten a) 1 poeng. 1b) 1 poeng. Tid. Oppgavene. Tillatte hjelpemidler. 30. november kl. 14.

EKSAMENSOPPGAVE. Vil det bli gått oppklaringsrunde i eksamenslokalet? Svar: JA Hvis JA: ca. kl. 10:00 og kl. 12:30

Læringsmål uke 7. Objektorientert programmering i Python: Introduksjon. Innhold uke 7. Lite tilbakeblikk: Programflyt og skop

EKSAMENSOPPGAVE. Kalkulator «Huskelapp» - A4 ark med skrift på begge sider Enkel norsk-engelsk/engelsk-norsk ordbok

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO

EKSAMENSOPPGAVE. FYS-1001 Mekanikk. Fire A4-sider (to dobbeltsidige ark) med egne notater. Kalkulator ikke tillatt. Ruter.

UNIVERSITETET I OSLO

TDT4100 Objektorientert programmering

INF våren 2017

AVDELING FOR INGENIØRUTDANNING EKSAMENSOPPGAVE

UNIVERSITETET I OSLO

IN1010 Objektorientert programmering Våren 2019

Transkript:

Fakultet for naturvitenskap og teknologi EKSAMENSOPPGAVE Eksamen i: Dato: 22 mai 2018 Klokkeslett: 09-13 Sted: Tillatte hjelpemidler: Adm.bygget, rom K1.04 og B154 Ingen Type innføringsark (rute/linje): Antall sider inkl. forside: Kontaktperson under eksamen: Telefon/mobil: 6 Lars Brenna 907 86 723 Vil det bli gått oppklaringsrunde i eksamenslokalet? Svar: JA / NEI Hvis JA: ca. kl. 10 NB! Det er ikke tillatt å levere inn kladdepapir som del av eksamensbesvarelsen. Hvis det likevel leveres inn, vil kladdepapiret bli holdt tilbake og ikke bli sendt til sensur. Postboks 6050 Langnes, N-9037 Tromsø / 77 64 40 00 / postmottak@uit.no / uit.no

Side 2 av 6 sider Eksamen INF-1400 Objektorientert programmering Vår 2018 Eksamenssettet består av to deler, totalt fire oppgaver. Les oppgaveteksten grundig og disponer tiden slik at du får tid til å svare på alle oppgavene. I noen oppgaver kan det være nødvendig å tolke oppgaveteksten ved å gjøre noen antagelser - gjør i så fall rede for hvilke antagelser du har gjort, men pass på å ikke gjøre antagelser som trivialiserer oppgaven. Merk: Fokus i oppgaven er objektorientering og bruk av datastrukturer vi bygger opp. Det gis ikke ekstra poeng for å utvide oppgaven utover det som er spesifisert. Pseudokode er i de fleste tilfeller godtatt, det kreves ikke kjørbar kode. Python3- syntaks er foretrukket, men ikke strengt nødvendig. Del 1 Et universitet har behov for et system for å holde rede på studenters karakterbok. Så langt har universitetet benyttet et system skrevet i Python av tidligere studenter. Dette systemet har blitt utvidet etterhvert som nye behov har meldt seg, men nå har det blitt tungvint å vedlikeholde og legge til nye funksjoner. Universitetet ber deg lage en ny løsning som er objekt-orientert og som lar seg enhets-teste (unit-teste), og stiller følgende funksjonelle krav: 1. Hold rede på student, fag og karakter. 2. Systemet skal støtte at en karakterbok har flere studenter, en student tar flere fag, og hvert fag har flere karakterer. 3. Det skal kunne registreres karakter på student for hvert fag. 4. Det skal kunne beregnes gjennomsnittskarakter for hver student. 5. Karakterene i et fag skal ha vekting, slik at forskjellig vektede karakterer teller ulikt i gjennomsnittet. Oppgave 1a - 15% Implementér de klassene du anser som nødvendige. Du trenger ikke ta med andre metoder enn init ().

Side 3 av 6 sider Oppgave 1b - 15% Implementer metodene registrer_student(self, navn), registrer_fag(self, navn), registrer_karakter(self, score, vekting) i de klassene du mener de hører hjemme. Du trenger ikke ta med den koden du implementerte over, men indiker tydelig hvilken klasse metodene tilhører. Oppgave 1c - 15% Implementer metoden gjennomsnittskarakter(self) slik at du kan finne gjennomsnittskarakteren for en gitt student, eksempelvis slik: bok = Karakterbok () k a r i = bok. r e g i s t r e r _ s t u d e n t ( Kari Nordkvinne ) matte = k a r i. r e g i s t r e r _ f a g ( Kalkulus ) matte. r e g i s t r e r _ k a r a k t e r (75, 0.20) print ( k a r i. g j e n n o m s n i t t s k a r a k t e r ( ) ) Oppgave 1d - 5% På grunn av tidligere erfaringer med bugs i systemet, krever universitetet at utviklerne av karakterboka benytter enhetstesting (unit testing). Forklar kort hva enhetstesting er, og implementer en (enkel) test for en av komponentene i systemet.

Side 4 av 6 sider Del 2 Oppgave 2-20% Design patterns kan grovt inndeles i tre hovedkategorier: 1. Kreasjonelle ("Creational") 2. Strukturelle ("Structural") 3. Oppførselsbaserte ("Behavioral") Forklar kort hva disse tre kategoriene representerer, og gi ETT eksempel fra hver kategori. Beskriv motivasjonen bak hvert eksempel du nevner, og hovedtrekkene i løsningen de skisserer. Kode er ikke nødvendig med mindre du føler det gir en bedre beskrivelse. Oppgave 3-15% c l a s s A: name = " A l f a " def i n i t ( s e l f, foo ) : s e l f. foo = foo foo = 100 s e l f. print_me () def print_me ( s e l f ) : print ( s e l f. name, s e l f. foo ) c l a s s B(A ) : name = " Beta " def i n i t ( s e l f, bar = 40): s e l f. bar = bar print ( s e l f. name, bar ) c l a s s C: name = " C h a r l i e " c l a s s D(A, C ) : name = " Delta " def i n i t ( s e l f, v a l ) : A. i n i t ( s e l f, v a l ) def print_me ( s e l f ) : print ( s e l f. name, " s i e r ", s e l f. foo )

Side 5 av 6 sider a = A(20) b = B() d = D(60) a) Angi hvilke attributter B arver fra A. b) Forklar kort hva polymorfi er. c) Angi hva programmet over skriver ut.

Side 6 av 6 sider Oppgave 4-15% Gi en beskrivelse av to (2) av de følgende uttrykk/konsepter: a) Assosiasjon b) Polymorfi c) Self (i Python) d) Komposisjon e) Arv