Eksamen. Objektorientert Programmering IGR 1372

Størrelse: px
Begynne med side:

Download "Eksamen. Objektorientert Programmering IGR 1372"

Transkript

1 + JVNROHQL1DUYLN $YGHOLQJIRU7HNQRORJL Eksamen i Objektorientert Programmering IGR LG'HVHPEHU± 7LOODWWHKMHOSHPLGOHU 6NULYHVDNHU2UGE NHU -DYD6RIWZDUH6ROXWLRQV)RXQGDWLRQVRI3URJUDP 'HVLJQVNUHYHWDY/HZLV /RIWKXV (NVDPHQVRSSJDYHQEHVWnUDYWRWDOWVLGHULQNOXVLYHGHQQHIRUVLGHQRJ YHGOHJJIRU80/QRWDVMRQ.RQWUROOHUDWRSSJDYHVHWWHWHUNRPSOHWWI UGXEHJ\QQHUnEHVYDUHVS UVPnOHQH 1RHQJHQHUHOOHUnGRJEHPHUNQLQJHUI UGXEHJ\QQHU Ikke la deg skremme av antallet sider i oppgaven. Den er ikke større/vanskeligere enn tidligere oppgaver i faget. Les hele oppgaven I U du begynner å løse deloppgavene Dersom oppgaveteksten på noe punkt er uklar eller upresis, kan du gjøre dine egne presiseringer/forutsetninger. Gjør i så fall tydelig rede for disse i din besvarelse. Du kan fritt bruke alle Java-biblioteker, for eksempel java.util.*, java.io.*, etc. Oppgaven kan besvares på norsk eller engelsk /\NNHWLO Eksamen i Objektorientert Programmering Side 1 av Desember 200

2 2SSJDYH 2SSJDYHD Innenfor koden knyttet til en klasse eller et klasse-hierarki kan man ha flere metoder med samme navn, men med forskjellige parametere. - Hva kalles dette i faglitteraturen? - Hva er det som skiller den ene metoden fra den andre metoden med samme navn? 2SSJDYHE I Java TM kan man arve egenskaper fra andre klasser. Arven omfatter da både metoder og attributter, og dermed også alle assosiasjoner og relasjoner. Dog finnes det et sett med begrensinger på hvilke attributter/metoder man har tilgang på i barn-klassen i forhold til hva som forefinnes i mor-klassen. Hva er det som begrenser denne tilgangen? 2SSJDYHF Java TM er som kjent et objekt-orientert programmeringsspråk hvor vi blant annet kan kalle metoder og sende parametere med metodene. Overføringen av parameterene til metoden skjer på en av to måter. Forklar hvilke to måter parameteroverføringen skjer på og hva som er konsekvensen av dette. Besvarelsen skal være kort og bør ikke overstige 5 setninger. 2SSJDYHG Følgende sett av datatyper skal sendes som parametere til en metode. Angi hvordan parameteroverføring for de forskjellige datatypene nedenfor skjer. int Integer Boolean int [] Vector String [] float Eksamen i Objektorientert Programmering Side 2 av Desember 200

3 2SSJDYHH Forklar forskjellen på while og do-while setningen med hensyn på sjekk av betingelsen knyttet til setningen, og hvilken betydning dette har for antall ganger kodeblokken i setningen utføres. 2SSJDYHI Variabler og metoder kan deklareres som static. Hvilken betydning har dette for bruken av dem i forhold til når static ikke er brukt? 2SSJDYH I denne deloppgaven skal dere implementere en metode på to forskjellige måter. Følgende sett med kode er gitt hvor dere skal implementere/skrive to alternative løsninger av metoden public static int henttegn(string S) innenfor denne klassen: 1: public class Oppgave3 { 2: public static char [] TELLETEGN={'a','e','i','o','u','y','æ','ø','å', 3: 'A','E','I','O','U','Y','Æ','Ø','Å', 4: '0','1','2','3','4','5','6','7','8', 5: '9',' ','.',',',':','\t'}; 6: 7: public static void main(string[] args) { 8: Oppgave3 x = new Oppgave3(); 9: 10: String S1 = "Dette er eksamen i OOP, høsten 2001." + 11: "Eksamen gjelder emnet IGR 1372 og " + 12: "avholdes onsdag 5.te desember."; 13: 14: System.out.println("\nStrengen \"" + S1 + "\"\n"); 15: System.out.println("Inneholder " + x.henttegn(s1) + " tegn " + 16: "som skulle telles opp, av totalt " + 17: S1.length() + " tegn"); 18: } 19: } Metoden dere skal skrive har som oppgave å telle opp antall TELLETEGN i en streng som sendes inn i metoden. Ut av metoden kommer det aktuelle antallet TELLETEGN som strengen som ble sendt som parameter inneholdt. De to implementasjonene skal henholdsvis benytte seg av IRU-løkker, og av ZKLOH-løkker. Begge metodene kan ha samme navn og parameterliste. Eksamen i Objektorientert Programmering Side 3 av Desember 200

4 2SSJDYH I denne oppgaven skal du jobbe med objektorientering og programmering. Biblioteket ved Gnytthøgda Lavskole skal innføre data ved biblioteket, og i denne sammenheng har de leid inn deg som konsulent for å planlegge og lage det nye systemet. Den videre teksten er beskrivelsen du har fått av ledelsen ved Gnytthøgda Lavskole s bibliotek. Vær oppmerksom på at denne teksten kan være uklar på enkelte punkter og at den ikke nødvendigvis vil gi deg all den informasjonen du trenger for å kunne lage systemet. Vær også oppmerksom på at noe av informasjonen som gis ikke er vesentlig for utformingen av systemet. %LEOLRWHNHWKDUIOHUHIRUVNMHOOLJHXWOnQVHQKHWHUKHQKROGVYLVE NHUYLGHRHURJ&'HU+HUHU QRHQHNVHPSOHUSnKYRUGDQQRHQNRQNUHWHXWOnQVIRUHNRPVWHUNDQVHXWRJKYRUGDQGLVVH IRUKROGHUVHJWLOXWOnQVHQKHW 8WOnQV)RUHNRPVW 8WOnQVHQKHW 8WOnQV,G (QKHWV,G /RNDVMRQV,G 1DYQ 5+K $VWHUL[L5RPD 5+K -DYDE\'LVVHFWLRQ 5+K 3LQN)OR\G±'DUN6LGH2I7KH0RRQ /RNDVMRQV,GHUGHOWRSSLWUHGHOHU'HI UVWHWUHWHJQHQHDQJLUORNDVMRQHQLIRUPDYHW UHROQXPPHU5DQJLU5HROQU(QUHROHUGHOWRSSLIOHUHK\OOHVHNVMRQHURJGHQHVWHWUH WHJQHQHDQJLUK\OOHVHNVMRQHQ+DQJLUK\OOHVHNVMRQPHQVGHVLVWHWUHWHJQHQHDQJLU K\OOHQXPPHUHWLUHROHQVK\OOHVHNVMRQKDQJLUK\OOHQXPPHU'HWWHEHW\UDWYLNDQOHVHHQ /RNDVMRQV,'GLUHNWH5+KEHW\U5HRO+\OOHVHNVMRQK\OOH5+KEHW\U5HRO +\OOHVHNVMRQK\OOHRVY1DYQDQJLUQDYQHWSnGHWVRPNDQOnQHVXW 8WOnQV,GHUHWQXPPHUVRPEHQ\WWHVIRUnLGHQWLILVHUHHQHQNHOWXWOnQVIRUHNRPVWDYHQ XWOnQVHQKHW'HWHUQHPOLJVOLNDWELEOLRWHNHWNDQKDIOHUHIRUHNRPVWHUDYVDPPHXWOnQVHQKHW )OHUHXWOnQVIRUHNRPVWHUNDQDOWVnKDVDPPH/RNDVMRQV,GPHQVDOOHXWOnQVIRUHNRPVWHQHYLOKD IRUVNMHOOLJ8WOnQV,G(QKHWV,GLGHQWLILVHUHUHQ8WOnQVHQKHW 9LKDUDOWVnHQVLWXDVMRQKYRUHQXWOnQVHQKHWIRUHNVHPSHO $VWHUL[L5RPD NDQILQQHVLIOHUH XWOnQVIRUHNRPVWHUXWOnQVLGRJPHQKYRUIRUHNRPVWHQHHUSODVVHUWSn VDPPHVWHGLVDPPHUHRO5+K,WLOOHJJHUGHWVOLNDWVNROHQ QVNHUnNXQQHOnQHXWXWOnQVIRUHNRPVWHUEnGHWLODQVDWWHRJ VWXGHQWHUYHG*Q\WWK JGD/DYVNROH'HWWHEHW\UDWELEOLRWHNHWKDUWRW\SHUDYOnQWDJHUH DQVDWWHRJVWXGHQWHU6NLOOHWPHOORPDQVDWWHRJVWXGHQWHUHUYLNWLJVLGHQDQVDWWHInUOnQH XWOnQVIRUHNRPVWHQHOHQJHUHHQQVWXGHQWHQH %LEOLRWHNHW QVNHUVHOYI OJHOLJRJVnHQRYHUVLNWRYHUKYLONHXWOnQVIRUHNRPVWHUVRPHUWLOXWOnQ DNNXUDWQnRJQnUGHHUIRUYHQWHWnEOLWLOEDNHOHYHUW,QNOXVLYHLGHQQHRYHUVLNWHQLQQJnURJVn OnQHUHQGHQDQVDWWHHOOHUVWXGHQWHQVOLNDWELEOLRWHNHWNDQSXUUHXWOnQHUHQKYLV XWOnQVIRUHNRPVWHQLNNHHUOHYHUWWLOEDNHLQQHQUHWWWLG Eksamen i Objektorientert Programmering Side 4 av Desember 200

5 2SSJDYHD Lag et objektorientert design for bibliotekssystemet. Besvarelsen skal inneholde en grov objektmodell med alle assosiasjoner/relasjoner og kardinalitet. I tillegg skal du kommentere modellen med fokus på arv og assosiasjoner. Kommenter spesielt eventuell bruk av Interfacer og abstrakte klasser. Du skal ikke modellere reoler, hyller og lignende siden du forutsetter at lokasjonskoden er tilstrekkelig i denne sammenheng. Du skal heller ikke modellere klasser/objekter som utgjør containere, som for eksempel Lånetagere (som inneholder et array over alle lånetagere og metoder for å finne/endre disse) eller lignende. Du skal også se bort fra eventuelle menysystemer, vindussystemer og lignende. 2SSJDYHE Lag kodeskjelletter for klassene du kom frem til i oppgave 3a som representerer UtlånsEnhet, CD, og Utlån. Kommenter hvorfor de forskjellige klassene inneholder de attributter og metoder som du angir, samt hvorfor attributtene du angir i klassene er korrekt. 2SSJDYHF Du skal nå lage en såkalt container-klasse; LåntagerOversikt. Denne klassen skal inneholde en oversikt over alle mulige låntagere i systemet, samt muligheten for nyregistrering av nye låntagere, gjenfinning av eksisterende låntagere, samt sletting av låntagere. Lag et skjellett for denne klassen og implementer metoden som legger til en ny låntager. Ta de forutsetninger som du synes er påkrevd. Eksamen i Objektorientert Programmering Side 5 av Desember 200

6 ,QQOHGQLQJWLORSSJDYHG Vi skal nå se litt nærmere på en ny klasse - Bibliotekssystem. Denne klassen utgjør klassen som bibliotekarene benytter seg av når de skal gjøre ting i systemet. Eksempler på dette er finnutlånsenhet, purrlånere, registrernylåner, registrerinnlevering, osv. Denne klassen er altså selve hovedprogrammet. Her kommer et lite utsnitt av klassen Bibliotekssystem. Klassen inneholder flere metoder og mer kode enn det som fremkommer i utsnittet (illustrert ved prikkene i koden). 1: import java.io.*; 2: import java.util.*; 3: 4: public class Bibliotekssystem { 5: 6: UtlånForekomster utlobj; // Oversikt over alle forekomster av 7: // utlånsenheter 8: Lånere laanere; // Oversikt over alle potensielle lånere 9: 10: // Konstruktør 11: public Bibliotekssystem() { 12: utlobj = new UtlånForekomster (); 13: laanere = new Lånere(); 14: } 15: 16: // Leser inn alle data fra fil, både UtlånsForekomster og Lånere 17: protected void lesdata(string innfil) throws IOException { 18: BufferedReader in = new BufferedReader(new FileReader(new File(innfil))); 19: 20: // Leser en og en linje fra fila inntil ikke mer kan leses fra fila (EOF) 21: while ( (String linje = in.readline())!= null) { 22: : 23: : 24: : 25: } 26: in.close(); 27: 28: } 29: 30: : 31: : 32: // Oppstarten av applikasjonen 33: public static void main(string [] args) throws Exception { 34: 35: Bibliotekssystem BibSys = new Bibliotekssystem(); 36: String filnavn = C:\Datafil.dta ; 37: BibSys.lesData(filnavn); 38: : 39: : 40: BibSys.skrivData(filnavn); 41: 42: } 43: } Det første som skjer når hovedprogrammet starter opp er at utlånsforekomster lastes inn i programmet fra fil ( lesdata(string innfil) ). Utlånsforekomstene legges inn i et objekt av Container-klassen UtlånsForekomster (som igjen inneholder en Vector hvor dataene som hentes fra fil legges inn som UtlånsForekomst). Innleggingen skjer i Container-klassen UtlånsForekomster ved at man kaller metoden void ny(utlånsforekomst o). UtlånsForekomst har følgende konstruktører: public UtlånsForekomst(String ForekomstId, int EnhetsId); public UtlånsForekomst(String ForekomstId, UtlånsEnhet enhet); Du velger selv hvilke av disse konstruktørene du ønsker å bruke. Eksamen i Objektorientert Programmering Side 6 av Desember 200

7 2SSJDYHG Din oppgave er å fullføre metoden lesdata(string innfil) i klassen Bibliotekssystem. Denne metoden skal lese dataene fra fil og legge dataene inn i et objekt av klassen UtlånsForekomster. Oppgaven skal besvares i form av den ferdige utgaven av metoden lesdata( ). Datafilen er en vanlig tekstfil, og dataene i filen ser ut som følger: R04H02h Asterix i Roma R04H02h Asterix i Roma R04H01h Java by Dissection R12H10h Pink Floyd Dark Side Of The Moon Kolonnene i filen gjenkjenner du fra innledningen av oppgaven. Du kan forutsette at UtlånsEnhet forefinnes i systemet fra før. 7LSV %UXN6WULQJ7RNHQL]HUIRUnKnQGWHUHIHOWHQHLKYHUOLQMHVRPGXOHVHUIUDILODRJEUXN,QWHJHUNODVVHQIRUnRYHUVHWWHIUD6WULQJWLOLQW6HIRU YULJ$SSHQGL[0LO UHERNDIRU PHULQIRUPDVMRQRPGLVVHNODVVHQH 2SSJDYHH GnyttHøgda Lavskoles Bibliotek er plaget med at mange låntagere ikke leverer tilbake det de har lånt innen den fristen som er satt på det aktuelle utlånet. Dette er problematisk fordi andre kanskje står på venteliste på den aktuelle utlånsforekomsten. For å løse dette har biblioteket bestemt seg for at låntagere som har utlånsforekomster som de ikke har levert tilbake innen fristen, ikke skal få låne nye før de har levert tilbake det de allerede har lånt. Dette skal sjekkes automatisk av systemet når en låntager forsøker å låne. Beskriv, med utgangspunkt i din egen objektmodell, hvordan du ville løse dette problemet. Eksamen i Objektorientert Programmering Side 7 av Desember 200

8 2SSJDYH Følgende sett med kode er gitt som utgangspunkt til denne oppgaven: 1: public class Sirkel { 2: // plassering og størrelse på sirkel 3: private int xpos, ypos, radius; 4: 5: // parameterløs konstruktør 6: public Sirkel () { 7: xpos = 0; ypos = 0; radius = 1; 8: } 9: 10: // konstruktør med parameter 11: public Sirkel (int x, int y, int r) { 12: xpos = x; ypos = y; radius = r; 13: } 14: 15: public void tegn () { 16: // kode som tegner omrisset av sirkelen 17: } 18: 19: public double areal () { 20: return (double)(radius * radius * ); 21: } 22: } 23: // >> Ny klasse: figurer << : 25: public class figurer 26: { 27: public static void main (String[] args) { 28: Sirkel[] flater = new Sirkel [10]; // Array for sirkler 29: 30: // kode som oppretter sirkler og legger dem inn i arrayen 31: : 32: : 33: for (int i = 0; i < 10; i++) 34: System.out.println("Arealet til flate " + i + 35: " er " + flater[i].areal(); 36: } 37: } 2SSJDYHD Vi tenker oss nå at det skal lages en ny klasse for Firkant og senere også for andre typer flater etter samme mønster som Sirkel. Videre vil man at arrayet flater skal kunne inneholde forekomster av både Sirkel, Firkant og av eventuelt andre flater. Dette forutsetter at de har et felles "opphav", som for eksempel en felles foreldreklasse/morklasse. Metodene areal (og tegn) vil være forskjellig i de forskjellige klassene og kan dermed ikke arves direkte fra en foreldreklasse. Likevel er det ønskelig at for-løkka i main kan benyttes som før. En foreldreklasse for Sirkel, Firkant med flere vil heller ikke ha nok opplysninger til å kunne bli tegnet opp. Det er derfor ikke aktuelt å lage forekomster av denne klassen. Hva kalles den type klasser som det ikke kan lages forekomster av? Lag (skriv) klassen Firkant og en foreldreklasse for Sirkel, Firkant (og eventuelt andre) slik at forutsetningene over holder. Det er ikke nødvendig å skrive kode for metoden tegn i klassen Firkant. Det er heller ikke nødvendig å skrive main eller klassen Sirkel på nytt, selv om det må gjøres endringer i disse. Eksamen i Objektorientert Programmering Side 8 av Desember 200

9 2SSJDYHE Metoden tegn() i Sirkel og Firkant er ment å tegne opp omrisset av flatene. Vi vil ha tilsvarende klasser som tegner fylte flater (vi skal altså fargelegge innholdet av flaten). Disse klassene kan være barnklasser av henholdsvis Sirkel og Firkant. De bør i tillegg til det de arver ha opplysning om farge. For vårt formål er det nok å bruke en int. Det finnes andre klasser, utenfor det aktuelle arvehierarkiet, som også definerer grafiske objekter med farger, og vi ønsker å ha en array i main som inneholder alle typer obekter som har farge i tillegg til den allerede eksisterende arrayen flater. Det skal også være en for-løkke som skriver ut fargen på alle objektene i denne arrayen (den nye arrayen kan for eksempel hete FargeFlater). Hvordan vil du løse dette? Skriv hele løsningen for en klasse FyltFirkant som arver fra Firkant. Eksamen i Objektorientert Programmering Side 9 av Desember 200

10 9HGOHJJ80/QRWDVMRQ.ODVVH Grov: Klassenavn $EVWUDNW.ODVVH DEVWUDFWklassenavn,QWHUIDFH <<interface>> Eller detaljert: Eksempel: Interfacenavn.ODVVHQDYQ Variabel:W\SH Metode(arg.list):UHWXUW\SH 3HUVRQ navn: 6WULQJ alder: LQW barn: Person[ ] getnavn():6wulqj setnavn(string navn): void Klasse1 $VVRVLDVMRQEUXNHUKDU $UYJMHOGHURJVnDUYPHOORPLQWHUIDFHU Superklasse Objekter i en klasse (NODVVH) bruker spesiali- generaliobjekter av en annen klasse (NODVVH). sering sering I praksis betyr dette at et objekt i NODVVH Kaller metoder på et objekt av NODVVH Sub Sub.RPSRVLVMRQEHVWnUDY $JJUHJHULQJLQQHKROGHU Objekter av en klasse (NODVVH) består av Eller inneholder objekter av en annen klasse (NODVVH). Objekter av den andre klassen (NODVVHvet nødvendigvis ikke om eksistensen av objektet av den første klassen. Som.RPSRVLVMRQ, men noe svakere. I denne relasjonen vet objektene av om eksistensen av objekt1.duglqdolwhwvdqjlyhovhu Kardinalitet kan angis på begge sider av en relasjon, men unntak av arv. Kardinalitetet angir hvordan ett objekt oppfatter situasjonen fra sin side. Nedenfor gis noen eksempler: 1 1 Ett objekt av bruker ett objekt av klasse 2, og Omvendt 1 n..m Ett objekt av består av Q til P objekter av, og ett objekt av bruker ett objekt av 1 * Ett objekt av bruker mange objekter av, Mens ett objekt av bruker kun ett objekt av 3,4 2,4,6 Ett objekt av bruker 2,4, eller 6 objekter av og ett objekt av bruker 3 eller 4 objekter av Eksamen i Objektorientert Programmering Side 10 av Desember 200

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO Bokmål UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i: INF1000 Grunnkurs i objektorientert programmering Eksamensdag: Fredag 4. desember 2015 Tid for eksamen: 14.30 (4 timer)

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i INF1000 Grunnkurs i objektorientert programmering Eksamensdag: 13. juni 2006 Tid for eksamen: 9.00 12.00 Oppgavesettet er på 5

Detaljer

EKSAMEN I INF244: OBJEKTORIENTERT PROGRAMVAREUTVIKLING I BACHELORSTUDIET I IT OG INFORMASJONSSYSTEMER BACHELORSTUDIET I IT OG ENTREPRENØRSKAP

EKSAMEN I INF244: OBJEKTORIENTERT PROGRAMVAREUTVIKLING I BACHELORSTUDIET I IT OG INFORMASJONSSYSTEMER BACHELORSTUDIET I IT OG ENTREPRENØRSKAP Høgskolen i Buskerud Avdeling for økonomi og samfunnsvitenskap 3502 Hønefoss EKSAMEN I INF244: OBJEKTORIENTERT PROGRAMVAREUTVIKLING I BACHELORSTUDIET I IT OG INFORMASJONSSYSTEMER BACHELORSTUDIET I IT OG

Detaljer

Introduksjon til objektorientert programmering

Introduksjon til objektorientert programmering Introduksjon til objektorientert programmering Samt litt mer om strenger og variable INF1000, uke6 Ragnhild Kobro Runde Grunnkurs i objektorientert programmering Strategi: Splitt og hersk Metoder kan brukes

Detaljer

TDT4100 Objektorientert programmering

TDT4100 Objektorientert programmering Eksamensoppgave i TDT4100 Objektorientert programmering Torsdag 12. august 2010, kl. 09:00-13:00 Oppgaven er utarbeidet av faglærer Hallvard Trætteberg og kvalitetssikret av Svein Erik Bratsberg. Kontaktperson

Detaljer

23.09.2015. Introduksjon til objektorientert. programmering. Hva skjedde ~1967? Lokale (og globale) helter. Grunnkurs i objektorientert.

23.09.2015. Introduksjon til objektorientert. programmering. Hva skjedde ~1967? Lokale (og globale) helter. Grunnkurs i objektorientert. Grunnkurs i objektorientert programmering Introduksjon til objektorientert programmering INF1000 Høst 2015 Siri Moe Jensen INF1000 - Høst 2015 uke 5 1 Siri Moe Jensen INF1000 - Høst 2015 uke 5 2 Kristen

Detaljer

Kapittel 8: Programutvikling

Kapittel 8: Programutvikling Kapittel 8: Programutvikling Redigert av: Khalid Azim Mughal (khalid@ii.uib.no) Kilde: Java som første programmeringsspråk (3. utgave) Khalid Azim Mughal, Torill Hamre, Rolf W. Rasmussen Cappelen Akademisk

Detaljer

Eksamen Objektorientert Programmering 2013

Eksamen Objektorientert Programmering 2013 Eksamen Objektorientert Programmering 2013 Høgskolen i Østfold 2013-01-07 Emnekode Emne ITF10611 Dato 2013-01-07 Eksamenstid 09:00-13:00 Hjelpemidler Faglærer Objektorientert Programmering To A4-ark (fire

Detaljer

Eksamen i emnet INF100 Grunnkurs i programmering (Programmering I) og i emnet INF100-F Objektorientert programmering i Java I Løsningsforslag

Eksamen i emnet INF100 Grunnkurs i programmering (Programmering I) og i emnet INF100-F Objektorientert programmering i Java I Løsningsforslag Universitetet i Bergen Det matematisk naturvitenskapelige fakultet Institutt for informatikk Side 1 av 7 Eksamen i emnet INF100 Grunnkurs i programmering (Programmering I) og i emnet INF100-F Objektorientert

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i INF1000 Grunnkurs i objektorientert programmering Eksamensdag: 11. juni 2004 Tid for eksamen: 9.00 12.00 Oppgavesettet er på 8

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO FASIT UNIVERSITETET I OSLO BOKMÅL Det matematisk-naturvitenskapelige fakultet Kontinuasjonseksamen i : Eksamensdag : INF1000 Grunnkurs i objektorientert programmering Fredag 7. januar Tid for eksamen :

Detaljer

INF1000 EKSTRATILBUD. Stoff fra uke 1-5 (6) 3. oktober 2012 Siri Moe Jensen

INF1000 EKSTRATILBUD. Stoff fra uke 1-5 (6) 3. oktober 2012 Siri Moe Jensen INF1000 EKSTRATILBUD Stoff fra uke 1-5 (6) 3. oktober 2012 Siri Moe Jensen PLAN FOR DAGEN gjennomgå stoff fra uke 1-5(6), men med en litt annen tilnærming kun gjennomgått stoff, men vekt på konsepter og

Detaljer

Løsningsforslag Test 2

Løsningsforslag Test 2 Løsningsforslag Test 2 Oppgave 1.1: Interface definerer et grensesnitt som kan implementeres av flere klasser. Dette gir en standardisert måte å kommunisere med objekter av en eller flere relaterte klasser.

Detaljer

Eksekveringsrekkefølgen (del 1) Oppgave 1. Eksekveringsrekkefølgen (del 2) Kommentar til oppgave 1. } // class Bolighus

Eksekveringsrekkefølgen (del 1) Oppgave 1. Eksekveringsrekkefølgen (del 2) Kommentar til oppgave 1. } // class Bolighus // class Bygning Oppgave 1 System.out.println( Bolighus ); // class Bolighus Hva blir utskriften fra dette programmet? class Blokk extends Bolighus{ // class Blokk IN105subclassesII-1 Eksekveringsrekkefølgen

Detaljer

Løsningsforslag til eksamen i INF1000 våren 2006

Løsningsforslag til eksamen i INF1000 våren 2006 Løsningsforslag til eksamen i INF1000 våren 2006 Oppgave 1 a) -1 false 7 b) 30 c) Verdien til j er: 4Verdien til k er: 3Verdien til n er: 7 d) Andre if-test er true Tredje if-test er true e) k = 4 k =

Detaljer

INF1010, 22. mai Prøveeksamen (Eksamen 12. juni 2012) Stein Gjessing Inst. for Informatikk Universitetet i Oslo

INF1010, 22. mai Prøveeksamen (Eksamen 12. juni 2012) Stein Gjessing Inst. for Informatikk Universitetet i Oslo INF, 22. mai 23 Prøveeksamen 23 (Eksamen 2. juni 22) Stein Gjessing Inst. for Informatikk Universitetet i Oslo Oppgave a Tegn klassehierarkiet for de 9 produkttypene som er beskrevet over. Inkluder også

Detaljer

INF1010 våren 2017 Onsdag 25. januar. Litt om unntak i Java

INF1010 våren 2017 Onsdag 25. januar. Litt om unntak i Java INF1010 våren 2017 Onsdag 25. januar Litt om unntak i Java Stein Gjessing Nytt tema: Feilhåndtering (IO: Innlesing/Utskrift) n En metode som kan komme til å gjøre en IO-feil på fil må enten behandle denne

Detaljer

HØGSKOLEN I SØR-TRØNDELAG

HØGSKOLEN I SØR-TRØNDELAG HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring Kandidatnr: Eksamensdato: 14.desember 2007 Varighet: 0900-1200 Fagnummer: Fagnavn: Klasser: LO347D Web-applikasjoner med Java EE Nettstudenter

Detaljer

TDT4100 Objektorientert programmering

TDT4100 Objektorientert programmering Eksamensoppgave i TDT4100 Objektorientert programmering Mandag 6. august 2012, kl. 15:00-19:00 Oppgaven er utarbeidet av faglærer Hallvard Trætteberg og kvalitetssikrer Rune Sætre. Kontaktperson under

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO FASIT/LØSNINGSFORSLAG (kommentarene er for læringsformål og avspeiler ikke nødvendigvis hva som ble vektlagt ved sensuren denne gang). Forslaget er laget av Ole Christian Lingjærde. UNIVERSITETET I OSLO

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i Eksamensdag: 6. juni 2006 Tid for eksamen: 1430 1730 Oppgavesettet er på 6 sider. Vedlegg: INF1010 Objektorientert programmering

Detaljer

Hittil har programmene kommunisert med omverden via tastatur og skjerm Ønskelig at data kan leve fra en kjøring til neste

Hittil har programmene kommunisert med omverden via tastatur og skjerm Ønskelig at data kan leve fra en kjøring til neste Datafiler og serialisering Tekstfiler Scanner klassen Binær overføring av data Direkte tilgang til filinnholdet Serialisering LC191D Videregående programmering Semesterplan: http://aitel.hist.no/fag/vprg/index_lc191d.php

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO Kandidatnummer: BOKMÅL UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i : INF1000 Grunnkurs i objektorientert programmering Eksamensdag : Fredag 1. desember 2006 Tid for eksamen

Detaljer

BOKMÅL Side 1 av 7. KONTINUASJONSEKSAMEN I FAG TDT4100 Objektorientert programmering / IT1104 Programmering, videregående kurs

BOKMÅL Side 1 av 7. KONTINUASJONSEKSAMEN I FAG TDT4100 Objektorientert programmering / IT1104 Programmering, videregående kurs BOKMÅL Side 1 av 7 NTNU Norges teknisk-naturvitenskapelige universitet Fakultet for informasjonsteknologi, matematikk og elektroteknikk Institutt for datateknikk og informasjonsvitenskap KONTINUASJONSEKSAMEN

Detaljer

2 Om statiske variable/konstanter og statiske metoder.

2 Om statiske variable/konstanter og statiske metoder. Litt om datastrukturer i Java Av Stein Gjessing, Institutt for informatikk, Universitetet i Oslo 1 Innledning Dette notatet beskriver noe av det som foregår i primærlageret når et Javaprogram utføres.

Detaljer

LC191D Videregående programmering Høgskolen i Sør-Trøndelag, Avdeling for informatikk og e-læring. Else Lervik, januar 2012.

LC191D Videregående programmering Høgskolen i Sør-Trøndelag, Avdeling for informatikk og e-læring. Else Lervik, januar 2012. Repetisjon innkapsling static tabell av primitiv datatype LC191D Videregående programmering Høgskolen i Sør-Trøndelag, Avdeling for informatikk og e-læring. Else Lervik, januar 2012. Objektorientert modellering

Detaljer

ANTDAGER = 358; I Ifra nyttår 08 til 08 1ed julaften

ANTDAGER = 358; I Ifra nyttår 08 til 08 1ed julaften ~tte hjelpemiddel: Alle trykte og håndskrevne --- Kandidaten må selv kontrollere at oppgavesettet er fullstendig. nnføring skal være med blå eller svart penn. Les gjennom hele oppgavesettet før du begynner

Detaljer

Gjennomgang av eksamen H99

Gjennomgang av eksamen H99 Gjennomgang av eksamen H99 Administrasjon av kurser, studenter og påmeldinger Ole Christian Lingjærde Gruppen for bioinformatikk Institutt for Informatikk Universitetet i Oslo Oppgave 1 (15 %) (Besvares

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO Kandidatnummer: Bokmål UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Prøveeksamen i : INF1000 Grunnkurs i objektorientert programmering Prøveeksamensdag : Onsdag 12. november 2014 Tid

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO Side 1 UNIVERSITETET I OSLO Kandidatnr Det matematisk-naturvitenskapelige fakultet LØSNINGSFORSLAG Eksamen i: PRØVEEKSAMEN INF1000 Eksamensdag: Prøveeksamen 22.11.2011 Tid for eksamen: 12:15-16:15 Oppgavesettet

Detaljer

TOD063 Datastrukturer og algoritmer

TOD063 Datastrukturer og algoritmer TOD063 Datastrukturer og algoritmer Øving : 3 Utlevert : Uke 7 Innleveringsfrist : 26. februar 2010 Klasse : 1 Data og 1 Informasjonsteknologi Gruppearbeid: 2-3 personer pr. gruppe. Oppgave 1 Vi skal lage

Detaljer

Eksamen Objektorientert Programmering 2011

Eksamen Objektorientert Programmering 2011 Eksamen Objektorientert Programmering 2011 Høgskolen i Østfold 2011-05-11 Emnekode ITF10611 Emne Objektorientert Programmering Dato 2011 05-11 Eksamenstid 09:00-13:00 Hjelpemidler To A4-ark (fire sider)

Detaljer

Å lese tall fra en fil, klassen Scanner

Å lese tall fra en fil, klassen Scanner Å lese tall fra en fil, klassen Scanner 1. Et Scanner-objekt kan knyttes til et strømobjekt eller til en streng. 2. Kan skanne teksten etter data av ulike typer. 3. Kan kun skanne framover i teksten. Vis

Detaljer

Forkurs INF1010. Dag 2. Andreas Færøvig Olsen Tuva Kristine Thoresen

Forkurs INF1010. Dag 2. Andreas Færøvig Olsen Tuva Kristine Thoresen Forkurs INF1010 Dag 2 Andreas Færøvig Olsen (andrefol@ifi.uio.no) Tuva Kristine Thoresen (tuvakt@ifi.uio.no) Institutt for Informatikk, 7. januar 2014 Forkurs INF1010 - dag 2 Klasser og pekere Klasser

Detaljer

Programmering i C++ Løsningsforslag Eksamen høsten 2005

Programmering i C++ Løsningsforslag Eksamen høsten 2005 Programmering i C++ Eksamen høsten 2005 Simen Hagen Høgskolen i Oslo, Avdeling for Ingeniørutdanning 7. desember 2005 Generelt Denne eksamensoppgaven består av tre oppgaver, pluss en ekstraoppgave. Det

Detaljer

INF1000 - Uke 10. Ukesoppgaver 10 24. oktober 2012

INF1000 - Uke 10. Ukesoppgaver 10 24. oktober 2012 INF1000 - Uke 10 Ukesoppgaver 10 24. oktober 2012 Vanlige ukesoppgaver De første 4 oppgavene (Oppgave 1-4) handler om HashMap og bør absolutt gjøres før du starter på Oblig 4. Deretter er det en del repetisjonsoppgaver

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i INF1000 Grunnkurs i objektorientert programmering Eksamensdag: 10. juni 2005 Tid for eksamen: 14.30 17.30 Oppgavesettet er på

Detaljer

. Ved sensur vl1 ahe bokstaverte deloppgaver (a, b, c,...) telle like mye.

. Ved sensur vl1 ahe bokstaverte deloppgaver (a, b, c,...) telle like mye. ~KSAMENSOPPGA VE Les gjennom hele oppgavesettet før du begynner A besvare deloppgavene.. Hold deg til de identifikator-navnene som er brukt i oppgaveteksten, dog med unntak av metodenes parametemavn som

Detaljer

Antall sider (inkl. forsiden): 7. Alle trykte og håndskrevne

Antall sider (inkl. forsiden): 7. Alle trykte og håndskrevne Side 1 av 7 Bokmålstekst Emne: PROGRAMMERING (nytt pensum, 10 studiep.) Grupper: laa, lab, lac, lia, lib, lic Eksamensoppgaven best~r av: Tillatte hjelpemidler: Antall sider (inkl. forsiden): 7 Alle trykte

Detaljer

Innhold. INF1000 Høst Klasser og objekter. Uke 7: Mer objektorientert programmering Siri Moe Jensen

Innhold. INF1000 Høst Klasser og objekter. Uke 7: Mer objektorientert programmering Siri Moe Jensen Innhold INF1000 Høst 2015 Uke 7: Mer objektorientert programmering Siri Moe Jensen Oo: Hva skjer egentlig i programmene våre? Hva var det vi gjorde annerledes i Uke 5? Klassemetoder (deklarert som static)

Detaljer

NB!!! Veldig korte svar er gitt her. Disse burde det vært skrevet mer på ved en eksamen..

NB!!! Veldig korte svar er gitt her. Disse burde det vært skrevet mer på ved en eksamen.. Løsningsforslag Eksamen V2007 Oppgave 1 NB!!! Veldig korte svar er gitt her. Disse burde det vært skrevet mer på ved en eksamen.. Oppgave 1.1 Klasse som pakke rinne n primitiv datatype, slik at vi kan

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Kandidatnr Eksamen i INF1000 Grunnkurs i objektorientert programmering Eksamensdag: Onsdag 1. desember 2010 Tid for eksamen: 14.00 18.00

Detaljer

Eksamen i emnet INF100 Grunnkurs i programmering (Programmering I) og i emnet INF100-F Objektorientert programmering i Java I

Eksamen i emnet INF100 Grunnkurs i programmering (Programmering I) og i emnet INF100-F Objektorientert programmering i Java I Universitetet i Bergen Det matematisk naturvitenskapelige fakultet Institutt for informatikk Side 1 av 6 Bokmål Eksamen i emnet INF100 Grunnkurs i programmering (Programmering I) og i emnet INF100-F Objektorientert

Detaljer

Algoritmer og datastrukturer Kapittel 11 - Delkapittel 11.2

Algoritmer og datastrukturer Kapittel 11 - Delkapittel 11.2 Algoritmer og datastrukturer Kapittel 11 - Delkapittel 11.2 11.2 Korteste vei i en graf 11.2.1 Dijkstras metode En graf er et system med noder og kanter mellom noder. Grafen kalles rettet Notasjon Verdien

Detaljer

Eksamen i emnet INF100 Grunnkurs i programmering (Programmering I) Løsningsforslag

Eksamen i emnet INF100 Grunnkurs i programmering (Programmering I) Løsningsforslag Universitetet i Bergen Det matematisk naturvitenskapelige fakultet Institutt for informatikk Side 1 av 8 Eksamen i emnet INF100 Grunnkurs i programmering (Programmering I) Løsningsforslag Fredag 10. desember

Detaljer

INF1010 - Seminaroppgaver til uke 3

INF1010 - Seminaroppgaver til uke 3 INF1010 - Seminaroppgaver til uke 3 Oppgave 1 I denne oppgaven skal vi lage et klassehiearki av drikker. Alle klassene i hiearkiet skal implementere følgende grensesnitt p u b l i c i n t e r f a c e Drikkbar

Detaljer

INF Notater. Veronika Heimsbakk 10. juni 2012

INF Notater. Veronika Heimsbakk 10. juni 2012 INF1010 - Notater Veronika Heimsbakk veronahe@student.matnat.uio.no 10. juni 2012 1 Tilgangsnivåer 2 CompareTo Modifier Class Package Subclass World public Y Y Y Y protected Y Y Y N no modifier Y Y N N

Detaljer

programeksempel Et større En større problemstilling Plan for forelesingen Problemstillingen (en tekstfil) inneholdt ordet "TGA"

programeksempel Et større En større problemstilling Plan for forelesingen Problemstillingen (en tekstfil) inneholdt ordet TGA Et større programeksempel Hvordan løse et reelt problem med en objektorientert fremgangsmåte En større problemstilling I uke 4 skrev vi et program for å sjekke om et gen (en tekstfil) inneholdt ordet "TGA"

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO Bokmål UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i: INF1000 Grunnkurs i objektorientert programmering Eksamensdag: Fredag 4. desember 2015 Tid for eksamen: 14.30 (4 timer)

Detaljer

Oversikt. INF1000 Uke 1 time 2. Repetisjon - Introduksjon. Repetisjon - Program

Oversikt. INF1000 Uke 1 time 2. Repetisjon - Introduksjon. Repetisjon - Program Oversikt INF1000 Uke 1 time 2 Variable, enkle datatyper og tilordning Litt repetisjon Datamaskinen Programmeringsspråk Kompilering og kjøring av programmer Variabler, deklarasjoner og typer Tilordning

Detaljer

Oppgave 1. INF1000 Uke 13. Oppgave 2. Oppgave 3. Er dette lovlige deklarasjoner (når de foretas inni en metode)? JA NEI

Oppgave 1. INF1000 Uke 13. Oppgave 2. Oppgave 3. Er dette lovlige deklarasjoner (når de foretas inni en metode)? JA NEI Oppgave 1 INF1000 Uke 13 Gjennomgang av prøveeksamen fra høsten 2004 Er dette lovlige deklarasjoner (når de foretas inni en metode)? JA NEI int i; int k = i; int i, j = 4; int k = j; double[] x = new double[1];

Detaljer

INF1010 våren 2016. Arv og subklasser - del 2

INF1010 våren 2016. Arv og subklasser - del 2 INF1010 våren 2016 Onsdag 10. februar Arv og subklasser - del 2 pluss litt om feil og unntak hvis tid Stein Gjessing Institutt for informatikk Dagens tema Virtuelle metoder som er det samme som Polymorfi

Detaljer

INF1000: noen avsluttende ord

INF1000: noen avsluttende ord Pensum Det som er gjennomgått på forelesningene INF1000: noen avsluttende ord Arne og Fredrik Stoff som er behandlet i oppgaver/obliger Notat om Informasjonsteknologi, vitenskap og samfunnsmessige virkninger

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO Kandidatnummer: Bokmål UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Prøveeksamen i : INF1000 Grunnkurs i objektorientert programmering Prøveeksamensdag : Tirsdag 10. november 2015 Tid

Detaljer

Oblig 4 (av 4) INF1000, høsten 2012 Værdata, leveres innen 9. nov. kl. 23.59

Oblig 4 (av 4) INF1000, høsten 2012 Værdata, leveres innen 9. nov. kl. 23.59 Oblig 4 (av 4) INF1000, høsten 2012 Værdata, leveres innen 9. nov. kl. 23.59 Formål Formålet med denne oppgaven er å gi trening i hele pensum og i å lage et større program. Løsningen du lager skal være

Detaljer

Ta inn og ut av 2D-array. Java 6. Liste over ulike verdier i 2D-array. Det ferdige programmet. Vi skal lage et program som illustrerer hvordan man

Ta inn og ut av 2D-array. Java 6. Liste over ulike verdier i 2D-array. Det ferdige programmet. Vi skal lage et program som illustrerer hvordan man Eksempel med to-dimensjonal array Filbehandling Tekster Ole Christian Lingjærde Gruppen for bioinformatikk Institutt for informatikk Universitetet i Oslo Java 6 Vi skal lage et program som illustrerer

Detaljer

class Book { String title; } class Dictionary extends Book { int wordcount; } class CartoonAlbum extends Book { int stripcount; }

class Book { String title; } class Dictionary extends Book { int wordcount; } class CartoonAlbum extends Book { int stripcount; } Arv Arv (eng: inheritance) er en mekanisme for å bygge videre på eksisterende klasser og regnes ofte som varemerket til objektorientert programmering. Når arv brukes riktig, kan den gjøre koden ryddigere

Detaljer

INF1000 (Uke 15) Eksamen V 04

INF1000 (Uke 15) Eksamen V 04 INF1000 (Uke 15) Eksamen V 04 Grunnkurs i programmering Institutt for Informatikk Universitetet i Oslo Anja Bråthen Kristoffersen og Are Magnus Bruaset 22-05-2006 2 22-05-2006 3 22-05-2006 4 Oppgave 1a

Detaljer

OPPGAVE 5b og 8b Java Kode

OPPGAVE 5b og 8b Java Kode OPPGAVE 5b og 8b Java Kode public class Kant boolean behandlereturavbil() BehandleReturAvBil behandler = new BehandleReturAvBil(this); String regnr; int kmstand, tanknivaa; boolean erskadet; // 1: Få verdiene

Detaljer

Java-kurs. Andreas Knudsen Nils Grimsmo 9th October 2003

Java-kurs. Andreas Knudsen <andreakn@idi.ntnu.no> Nils Grimsmo <nilsgri@idi.ntnu.no> 9th October 2003 Java-kurs Andreas Knudsen Nils Grimsmo 9th October 2003 1 (Dette blir lagt ut på nett, du trenger ikke ta notater.) 1 Motivasjon For de som ikke går å data:

Detaljer

i=0 Repetisjon: arrayer Forelesning inf Java 4 Repetisjon: nesting av løkker Repetisjon: nesting av løkker 0*0 0*2 0*3 0*1 0*4

i=0 Repetisjon: arrayer Forelesning inf Java 4 Repetisjon: nesting av løkker Repetisjon: nesting av løkker 0*0 0*2 0*3 0*1 0*4 Forelesning inf - Java 4 Repetisjon: arrayer Tema: Løkker Arrayer Metoder Ole Christian Lingjærde,. september Deklarere og opprette array - eksempler: int[] a = new int[]; String[] a = new String[]; I

Detaljer

Oppgave 1. Oppgave 2. Oppgave 3. Prøveeksamen i INF1000. Ole Christian og Arne. 23. november 2004

Oppgave 1. Oppgave 2. Oppgave 3. Prøveeksamen i INF1000. Ole Christian og Arne. 23. november 2004 Oppgave 1 Prøveeksamen i INF1000 Ole Christian og Arne 23. november 2004 Er dette lovlige deklarasjoner (når de foretas inni en metode)? JA NEI int i; int k = i; int i, j = 4; int k = j; double[] x = new

Detaljer

Mer objektorientert programmering

Mer objektorientert programmering Mer objektorientert programmering Klasser og objekter En klasse med konstruktør og en array Innkapsling En klasse med datafil og kommandoløkke Klassen ArrayList Hva er hva? Klasser og objekter Det er viktig

Detaljer

Argumenter fra kommandolinjen

Argumenter fra kommandolinjen Argumenter fra kommandolinjen Denne veiledningen er laget for å vise hvordan man kan overføre argumenter fra kommandolinjen til et program. Hvordan transportere data fra en kommandolinje slik at dataene

Detaljer

Fra Python til Java. En introduksjon til programmeringsspråkenes verden. Dag Langmyhr

Fra Python til Java. En introduksjon til programmeringsspråkenes verden. Dag Langmyhr Fra Python til Java En introduksjon til programmeringsspråkenes verden dag@ifi.uio.no Oversikt Introduksjon Python Java Noe er likt Noe bare ser anderledes ut Noe er helt forskjellig Et eksempel Klasser

Detaljer

INF 1010, vår 2005 Løsningsforslag uke 11

INF 1010, vår 2005 Løsningsforslag uke 11 INF 1010, vår 2005 uke 11 Anders Brunland 11. april 2005 Oppgave 1 Oppgave 1 i kapittel 19, Rett på Java Er følgende metoder lovlige? Hovorfor/hvorfor ikke? a) void koknverter ( int mnd ) { konverterdato

Detaljer

Kapittel 7: Mer om arv

Kapittel 7: Mer om arv Kapittel 7: Mer om arv Redigert av: Khalid Azim Mughal (khalid@ii.uib.no) Kilde: Java som første programmeringsspråk (3. utgave) Khalid Azim Mughal, Torill Hamre, Rolf W. Rasmussen Cappelen Akademisk Forlag,

Detaljer

Fakultet for informasjonsteknologi, Institutt for datateknikk og informasjonsvitenskap

Fakultet for informasjonsteknologi, Institutt for datateknikk og informasjonsvitenskap Side 1 av 6 NTNU Norges teknisk-naturvitenskapelige universitet Fakultet for informasjonsteknologi, matematikk og elektroteknikk Institutt for datateknikk og informasjonsvitenskap BOKMÅL KONTINUASJONSEKSAMEN

Detaljer

Kapittel 1: Datamaskiner og programmeringsspråk

Kapittel 1: Datamaskiner og programmeringsspråk Kapittel 1: Datamaskiner og programmeringsspråk Redigert av: Khalid Azim Mughal (khalid@ii.uib.no) Kilde: Java som første programmeringsspråk (3. utgave) Khalid Azim Mughal, Torill Hamre, Rolf W. Rasmussen

Detaljer

Prøveeksamen i INF1000. Ole Christian og Arne. 23. november 2004

Prøveeksamen i INF1000. Ole Christian og Arne. 23. november 2004 Prøveeksamen i INF1000 Ole Christian og Arne 23. november 2004 Oppgave 1 Er dette lovlige deklarasjoner (når de foretas inni en metode)? JA NEI int i; int k = i; int i, j = 4; int k = j; double[] x = new

Detaljer

Løse reelle problemer

Løse reelle problemer Løse reelle problemer Litt mer om løkker, metoder med returverdier, innlesing fra fil og strenger INF1000, uke5 Ragnhild Kobro Runde MER OM LØKKER Repetisjon fra forrige uke: while Syntaks: while (condition)

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO OPPGAVEN BLIR GJENNOMGÅTT PÅ FORELESNINGEN 24/10. DU BØR FORBEREDE DEG TIL FORELESNINGEN VED Å SETTE AV MINST TRE-FIRE TIMER TIL Å PRØVE Å LØSE OPPGAVEN PÅ EGENHÅND. UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige

Detaljer

INF våren 2017

INF våren 2017 INF1010 - våren 2017 Om Java Objekter og klasser Både for deg som kan og for deg som ikke kan Java Stein Gjessing Universitetet i Oslo Ny versjon etter forlesningen der tre meningsløse private modifikatorer

Detaljer

INF1010 våren 2010 Torsdag 4. februar. Arv og subklasser del I. Emneoversikt subklasser (2 uker) Hva er en subklasse? Eksempel: Universitetsregister

INF1010 våren 2010 Torsdag 4. februar. Arv og subklasser del I. Emneoversikt subklasser (2 uker) Hva er en subklasse? Eksempel: Universitetsregister INF1010 våren 2010 Torsdag 4. februar Arv og subklasser del I Stein Gjessing Institutt for informatikk 1 Emneoversikt subklasser (2 uker) Generalisering - spesialisering Gjenbruk av klasser Ved sammensetning

Detaljer

TDT4102 - Prosedyre- og objektorientert programmering

TDT4102 - Prosedyre- og objektorientert programmering Konteringseksamen i TDT4102 - Prosedyre- og objektorientert programmering Lørdag 8. august 2009 Kontaktperson under eksamen: Hallvard Trætteberg Eksamensoppgaven er utarbeidet av Trond Aalberg Språkform:

Detaljer

Oblig 4Hybelhus litt mer tips enn i oppgaven

Oblig 4Hybelhus litt mer tips enn i oppgaven Oblig 4Hybelhus litt mer tips enn i oppgaven lørdag 19. okt 2013 Arne Maus Obligatorisk oppgave 4 Gulbrand Grås husleiesystem I denne oppgaven skal vi se på hans studenthus Utsyn. Utsyn består av 3 etasjer,

Detaljer

INF1000 (Uke 6) Mer om metoder, tekster

INF1000 (Uke 6) Mer om metoder, tekster INF1000 (Uke 6) Mer om metoder, tekster Grunnkurs i programmering Institutt for Informatikk Universitetet i Oslo Anja Bråthen Kristoffersen og Are Magnus Bruaset Rep: Metoder Java-programmene så langt

Detaljer

INF1010 våren Arv og subklasser del 1 (pluss litt I/O og unntaksbehandling)

INF1010 våren Arv og subklasser del 1 (pluss litt I/O og unntaksbehandling) INF1010 våren 2012 Torsdag 9. februar Arv og subklasser del 1 (pluss litt I/O og unntaksbehandling) Stein Gjessing Institutt for informatikk Universitetet i Oslo 1 Når du har lært om subklasser kan du

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Kandidatnr Eksamen i INF1000 Grunnkurs i objektorientert programmering Eksamensdag: Onsdag 10. juni 2009 Tid for eksamen: 9.00 12.00 Oppgavesettet

Detaljer

EKSAMEN. Objektorientert programmering

EKSAMEN. Objektorientert programmering EKSAMEN Emnekode: ITF 10609 Dato: 13.mai 2009 Emne: Objektorientert programmering Eksamenstid: kl 09.00 til kl 12.00 Hjelpemidler: 2 A4-ark med valgfritt innhold på begge sider. Faglærere: Tom Heine Nätt

Detaljer

INF1010 våren 2014. Arv og subklasser - del 2

INF1010 våren 2014. Arv og subklasser - del 2 INF1010 våren 2014 Onsdag 19. februar Arv og subklasser - del 2 Stein Gjessing Institutt for informatikk Dagens tema Virtuelle metoder som er det samme som Polymorfi Mer om arv / interface Mer om pekertilordninger

Detaljer

INF Notat om I/O i Java

INF Notat om I/O i Java INF1000 - Notat om I/O i Java Tuva Kristine Thoresen, Ingrid Grønlie Guren tuvakt@ulrik.uio.no, ingridgg@ulrik.uio.no 22. oktober 2014 Dette notatet handler om I/O (input/output) i Java, og tar for seg

Detaljer

Lese fra fil. INF1000 : Forelesning 5. Eksempel. De vanligste lesemetodene. Metoder:

Lese fra fil. INF1000 : Forelesning 5. Eksempel. De vanligste lesemetodene. Metoder: Lese fra fil Filbehandling Tekster Ole Christian Lingjærde Gruppen for bioinformatikk Institutt for informatikk Universitetet i Oslo INF1000 : Forelesning 5 Vi må først importere pakken easyio Vi åpner

Detaljer

Litt om pakker og mest om data inn og ut

Litt om pakker og mest om data inn og ut Litt om pakker og mest om data inn og ut IN105-javainnogut-1 import java.io.*;. Data inn fra tastaturet lesemetode tastatur BufferedReader void lesemetode (String [ ] args) throws IOException {... /* sett

Detaljer

INF1000 Klasser og objekter

INF1000 Klasser og objekter INF1000 Klasser og objekter Marit Nybakken marnybak@ifi.uio.no March 1, 2004 Dette dokumentet skal tas med en klype salt og forfatter sier fra seg alt ansvar. Dere bør ikke bruke definisjonene i dette

Detaljer

TDT4100 Objektorientert programmering

TDT4100 Objektorientert programmering Eksamensoppgave i TDT4100 Objektorientert programmering Tirsdag 2. juni 2009, kl. 09:00-13:00 Oppgaven er utarbeidet av faglærer Hallvard Trætteberg og kvalitetssikrer Trond Aalberg. Kontaktperson under

Detaljer

Læringsmål for forelesningen

Læringsmål for forelesningen Læringsmål for forelesningen Objektorientering Abstrakte klasser og grensesnitt, redefinering av metoder Java-programmering Arv og bruk av abstrakte klasser Eclipse Undersøke instanser i Eclipse 1 Dagens

Detaljer

INF1010, 15. januar 2014 2. time. Parametriserte klasser (generiske klasser) Stein Gjessing Inst. for Informatikk Universitetet i Oslo

INF1010, 15. januar 2014 2. time. Parametriserte klasser (generiske klasser) Stein Gjessing Inst. for Informatikk Universitetet i Oslo INF1010, 15. januar 2014 2. time Parametriserte klasser (generiske klasser) Stein Gjessing Inst. for Informatikk Universitetet i Oslo Repetisjon fra gamle dager: Metoder med parametre En metode uten parameter:

Detaljer

Inf1010 Våren Feilsituasjoner og unntak i Java. Stein Gjessing, Institutt for informatikk, Universitetet i Oslo

Inf1010 Våren Feilsituasjoner og unntak i Java. Stein Gjessing, Institutt for informatikk, Universitetet i Oslo Inf1010 Våren 2009 Feilsituasjoner og unntak i Java Stein Gjessing, Institutt for informatikk, Universitetet i Oslo Oversikt Hva er en feil (er det ikke mulig å unngå feil?) Hva skjer når et program feiler

Detaljer

BOKMÅL Side 1 av 5. KONTERINGSEKSAMEN I FAG TDT4102 Prosedyre og objektorientert programmering. Onsdag 6. august 2008 Kl. 09.00 13.

BOKMÅL Side 1 av 5. KONTERINGSEKSAMEN I FAG TDT4102 Prosedyre og objektorientert programmering. Onsdag 6. august 2008 Kl. 09.00 13. BOKMÅL Side 1 av 5 NTNU Norges teknisk-naturvitenskapelige universitet Fakultet for informasjonsteknologi, matematikk og elektroteknikk Institutt for datateknikk og informasjonsvitenskap KONTERINGSEKSAMEN

Detaljer

Algoritmer og datastrukturer Kapittel 3 - Delkapittel 3.1

Algoritmer og datastrukturer Kapittel 3 - Delkapittel 3.1 Delkapittel 3.1 Grensesnittet Liste Side 1 av 11 Algoritmer og datastrukturer Kapittel 3 - Delkapittel 3.1 3.1 En beholder 3.1.1 En beholder En pappeske er en beholder En beholder er noe vi kan legge ting

Detaljer

1. Finn klassene (hvilke objekter er det i problemet) 1. Dataene som beskriver problemet (hvilke objekter har vi og hvor mange klasser er det?

1. Finn klassene (hvilke objekter er det i problemet) 1. Dataene som beskriver problemet (hvilke objekter har vi og hvor mange klasser er det? Obligatorisk oppgave 3 Gulbrand Grås husleiesystem Oblig 3hus litt mer tips enn i oppgaven I denne oppgaven skal vi se på hans studenthus Utsyn. Utsyn består av 3 etasjer, nummerert fra -3. I hver etasje

Detaljer

Kapittel 5: Objektkommunikasjon

Kapittel 5: Objektkommunikasjon Kapittel 5: Objektkommunikasjon Redigert av: Khalid Azim Mughal (khalid@ii.uib.no) Kilde: Java som første programmeringsspråk (3. utgave) Khalid Azim Mughal, Torill Hamre, Rolf W. Rasmussen Cappelen Akademisk

Detaljer

UNIVERSITETET I BERGEN Det matematisk-naturvitenskapelige fakultet

UNIVERSITETET I BERGEN Det matematisk-naturvitenskapelige fakultet UNIVERSITETET I BERGEN Det matematisk-naturvitenskapelige fakultet Eksamen i emnet INF101/INF101-F - Programmering 2 Fredag 10. juni 2011, kl. 09-14 Bokmål Tillatte hjelpemidler: alle skrevne og trykte.

Detaljer

import java.io.*; import java.util.*; import javagently.text;

import java.io.*; import java.util.*; import javagently.text; //-------------------------------------------------------- // // Fil: Oppg1.java - // løser oppgave 1 i eksamensettet for in105 - v99 // //-------------------------------------------------------- import

Detaljer

Inf 1000 høst 2005 Løsningsforslag ordinær eksamen

Inf 1000 høst 2005 Løsningsforslag ordinær eksamen Inf 1000 høst 2005 Løsningsforslag ordinær eksamen Oppgave 1 (10 poeng) a) 11 x 3 = 33 b) 4 c) 4 d) 10 x 9 = 90 Oppgave 2 (16 poeng) Er disse programsetningene lovlige i Java? JA x NEI int i=1, j =i; x

Detaljer

Løsningsforslag eksamen in105, høsten 2000

Løsningsforslag eksamen in105, høsten 2000 Løsningsforslag eksamen in105, høsten 2000 Det tas forbehold om mulige feil i løsningsforslaget. Oppgave 1 I klassen Bok velger vi her å ta med int antallutlån selv om denne ikke trengs før i oppgave 4.

Detaljer

OBJEKTER SOM EN PROGRAMMERINGS-TEKNIKK

OBJEKTER SOM EN PROGRAMMERINGS-TEKNIKK INF1000: Forelesning 6 Klasser og objekter del 1 OBJEKTER SOM EN PROGRAMMERINGS-TEKNIKK Motivasjon Anta at vi ønsker å lage et studentregister hvor vi for hver student lagrer, bruker og telefonnummer Med

Detaljer

Algoritmer og Datastrukturer

Algoritmer og Datastrukturer Eksamen i Algoritmer og Datastrukturer IAI 21899 Høgskolen i Østfold Avdeling for informatikk og automatisering Torsdag 3. november 2, kl. 9. - 14. Hjelpemidler: Alle trykte og skrevne hjelpemidler. Kalkulator.

Detaljer

Dagens tema Kapittel 8: Objekter og klasser

Dagens tema Kapittel 8: Objekter og klasser Dagens tema Kapittel 8: Objekter og klasser Hva er objekter og klasser? Programmering med objekter Klassedeklarasjoner Generering av objekter Tilgang til elementer i objektene Objekt- og klassevariable

Detaljer