INF våren januar, uke 3 - Oversikt og forutsetninger Java datastruktur-tegninger

Størrelse: px
Begynne med side:

Download "INF1010 - våren 2007 16. januar, uke 3 - Oversikt og forutsetninger Java datastruktur-tegninger"

Transkript

1 INF våre jauar, uke 3 - Oversikt og forutsetiger Java datastruktur-tegiger Stei Gjessig Ist. for iformatikk Nye temaer i INF1010 Fra problem til program Software Egieerig light, fasee i systemutviklig Subklasser og virtuelle metoder Typig, omtypig, Abstrakte klasser og iterface (gresesitt) Rekursjo og Rekursive metoder og Biærsøkig, quick-sort, lister, trær Grafiske brukergreseitt Swig og hedelseshådterig Utak Kastig, mottakig, kotroll av feilsituasjoer Parallellprogrammerig Tråder og sykroiserig Lærigsmål INF1010: Kue lage større, komplekse og effektive programmer 1 2 Java - repetisjo Variabler, tilordiger og uttrykk Ethvert Java-program består av e eller flere klassedeklarasjoer. E av klassee må ha e metode som heter mai; dette vil være startpuktet for programmet. Pogrammet har (este) alltid også adre klasser ute mai-metode. Klasseav begyer med Stor bokstav. Iholdet i e klasse eller e metode skal alltid være omsluttet av krøllpareteser, og programsetiger avsluttes alltid med semikolo. Programsetiger utføres e og e i de rekkefølge de ligger i programmet. Tekster agis mellom doble aførselsteg. Java-filer kompileres med kommadoe javac Kompilerte Java-filer kjøres med kommadoe java Java-programmer bør ieholde kommetarer (Java-doc). 3 Å deklarere e variabel vil si å sette av lagerplass i maskies mie og å gi dee lagerplasse et av. Nav på variabler begyer med lite bokstav og ka ieholde siffer, me ikke begye med siffer. Variabelav ka ikke være det samme som oe av de reserverte ordee i Java. Vi gir variabler verdi ved e tilordigssetig, der likhetsteget betyr settes lik. 1. Reg ut høyreside it atall = 3; atall = atall + 4; 2. Sett resultatet i i variabele på vestreside atall Variabelavet vil på vestre side av et likhetsteg bety lagerplasse som skal gis y verdi. På høyre side av likhetsteget betyr variabelavet de verdie som er lagret på plasse med dette avet. 3 4

2 Variabler, tilordiger og uttrykk, forts. Bruk av tastatur og skjerm E tilordig består av tre deler: e variabel som får verdi, et likhetsteg, og et uttrykk ( et regestykke) som resulterer i e verdi. E operator er e operasjo som har sitt eget symbol, slik som for eksempel de fire regeartee og ikremet/dekremet-operatoree. E metode er e operasjo som har sitt eget av, slik som for eksempel Math.sqrt (...). Vi ka lage uttrykk ved å bruke operatorer og metoder på verdier eller variabler. Slike uttrykk blir evaluert, eller reget ut, år programmet kjører. Tre typer uttrykk som forekommer særlig ofte i programmer er umeriske uttrykk, logiske uttrykk og streg-uttrykk. Ekel, uformatert utskrift ka gjøres med metodee System.out.prit(...) og System.out.pritl(...). Formatert og uformatert utskrift ka gjøres med pakke easyio. Hvert program som skal bruke dee pakke må først importere pakke og deklarere e variabel (for eksempel skjerm) som blir forbidelse til skjerme. Deretter ka vi gi utskriftskommadoer av forme skjerm.out(...) og skjerm.outl(...). Vi ka skrive ut uformatert, iefor e oppgitt bredde, med stadard justerig iefor e oppgitt bredde, eller med selvvalgt justerig (vestrejustert, setrert eller høyrejustert). Ilesig fra tastaturet ka gjøres med verktøykasse easyio. Hvert program som skal bruke dee pakke må først importere pakke og deklarere e variabel (for eksempel tast) som blir forbidelse til tastaturet. Deretter ka vi gi ilesigskommadoer av forme tast.iit(), tast.idouble(), osv. 5 6 Variable, forgreiger og løkker Løkker forts. Alle programsetiger i et Java-program ligger ii e programblokk, avgreset av krøllparateser. E variabel er ku defiert iefor de programblokke de er deklarert, og ku fra det puktet i blokke hvor deklarasjoe gjøres og fram til slutte av programblokke. E variabel i e metode oppstår år metode starter, og dør år metode er ferdig utført. Defiisjosområdet til e variabel kalles skopet til variabele. Programblokker ka estes i i hveradre. Dersom e programblokk ligger iefor skopet til e variabel, vil variabele være defiert også ii dee programblokke. Forgreiger brukes år det er øskelig å foreta et valg mellom ulike programistruksjoer, basert på e logisk betigelse. De to viktigste kostruksjoee i Java for å lage forgreiger er if-else (ikludert spesialtilfellet ute else-gre) og switch. class A { static it k = 1; public static void mai ( Strig[] args) { it i=4; if (i >0) { i = 2; it k = i+5; System.out.pritl ("i:" + i + ", k:" + k); // slutt mai // slutt klasse A > java A i:2, k:7 7 Løkker brukes år det er øskelig å få utført et sett av programistruksjoer gjetatte gager. I Java er det tre former for løkker: class B{ public static void mai ( Strig[] args) { it i, a=0, b=0,c=0; >java B i = 1; while (i < 4) { a++; a:3, i++; b:4, c:3 i = 1; do {b++; i++; while (i < 4); for (i = 1; i < 4; i++){ c++; System.out.pritl("a:"+a+", b:"+b+", c:"+c); >java B a:3, b:3, c:3 De to første løkkekostruksjoee brukes gjere i situasjoer hvor e ikke øsker å ta stillig til øyaktig hvor mage gjeomløp løkke skal gjøre, me hvor e i stedet skal løpe gjeom løkke helt til e gitt betigelse blir usa. E for-løkke brukes gjere i situasjoer hvor atall løkkegjeomløp kotrolleres av e tellevariabel som oppdateres i slutte av hvert løkkegjeomløp. 8

3 Løkker forts. Løp gjeom alle objekter i HashMap Java 1.5 HashMap <Strig, Perso> h = ew HashMap <Strig,Perso> ( ); Arrayer E edimesjoal array består av e arraypeker og et arrayobjekt it[] primtall = ew it [10];... For å løpe gjeom alle objektee i h, lager vi e oppramsig og låser samtidig det vi skal hete til e bestemt klasse (Perso): Iterator <Perso> it = h.values ( ). iterator ( ) ; Deretter ka vi se på hvert ekelt objekt i HashMap'e ved å gå i løkke: while ( it.hasnext ( ) ) { Perso p = it.ext ( ); System.out.pritl( Nav: + p.hetnav ( ) ); Todimesjoal array: it[] [] soltimer = ew it [12][31]; Vi ka også i 1.5 ytte de ye for-løkka som automatisk lager e iterator for ( Perso p: h.values ( ) ) { System.out.pritl( Nav: + p.hetnav ( ) ); 9 10 Array Metoder E array består av e array-peker til et array-objekt som ieholder mage variable (elemeter) av samme type. Hver ekelt lagrigsplass i e array idetifiseres ved avet på arraye og e ideks (et heltall fra 0 og oppover), for eksempel primtall[4]. E todimesjoal array består av e array-peker til et array-objekt med arraypekere til hver sitt array-objekt med elemeter av de datatype som er i arraye (SE FIGUREN FORRIGE SIDE!) Startverdiee til elemetee i e array er avhegig av type: arrayer av tall (it, double, log, float, byte, short) får startverdie 0, boolske arrayer får startverdie false, char-arrayer får verdie \u0000, peker-arrayer får verdie ull. Etter iitialiserig er arrayes legde fast; de ka ikke edres. Legde av e array a er gitt ved a.legth. E array-peker ka settes til å peke på e y eller e ae array (av riktig type) Vi ka få tak i alle elemetee i e array ved å bruke e for-løkke der legde på arraye bestemmer atall gjeomløp. To- og flerdimesjoale arrayer deklareres ved å agi atall dimesjoer som atall par av hakepareteser, som i it[][] soltimer = ew it[12][31]; Gjeomløp av flerdimesjoale arrayer ka gjøres ved å legge forløkker ii Metoder ieholder deklarasjoer av lokale variabler og programsetiger. Metoder deklareres ie i e klasse. Metoder ka ha parametere de er som lokale variabler og får som startverdi verdie til uttrykk (regestykket) som brukes i kallet på metode. Metoder returerer verdier ved at selve kallet ka brukes i uttrykk (regestykker). Skal det ikke retureres e verdi, settes void fora metodeavet ved deklarasjo, ellers settes type (it, double, boolea,...peker til e klasse) som retureres. Verdie av det uttrykket som settes mellom retur og semikoloet, er de verdie som retureres (eks. retur j;). Statiske metoder (static) tilhører klasse eks. Math.sqrt(..), B.mai( ). mai(strig[]args) er e metode som startes av Java år programmet starter. Parametere Strig[]args er e array av tekster som er det ma har skrevet på kommadolije etter programavet (class- file) atskilt med blake. hveradre

4 /** Test av ulike typer av metoder */ class Perso { private Strig av; >java PersoMai Nytt av: Kari Trestakk Askeladdse /** kostruktor for Perso*/ Perso(Strig av) { this.av = av; /** leser verdie av av*/ Strig getnav() { retur av; /** setter y verdi i av */ void setnav (Strig ) { av = ; // ed class Perso /** Lager et Persoobjekt og kaller metodee*/ public class PersoMai { public static void mai ( Strig[] args) { Perso p = ew Perso("Kari Trestakk"); p.setnav(p.getnav() + " Askeladdse"); System.out.pritl("Nytt av: " + p.getnav()); >javadoc package PersoMai.java Tekster E tekststreg består av ige, ett eller flere teg omgitt av doble aførselsteg. Tekststreger ka pekes på av stregvariabler. Strig s = God dag ; E tekststreg ka ikke foradres, me ma ka lage ye tekststreger. Tekster ka skjøtes samme med adre tekster og tall ved bruk av operatore +. Java skiller mellom verdie av et tall og e tekst som ieholder tegee til tallet. For å skifte mellom typee må ma beytte e av metodee for koverterig. For å sammelike tekster brukes equals()-metode. compareto()-metode gir alfabetisk sammelikig. Se for øvrig Javadokumetasjoe for fullstedig oversikt over alle metodee for tekstmaipulasjo. s God dag Objekter, klasser og pekere For hver type av objekter (meesker, hus, bakkoti) vi øsker å represetere, deklarerer vi e klasse i programmet. I e klasse tar vi med bare det som iteresserer problemstillige vår. Det gjør vi med de variabler, pekere og metoder vi deklarerer der (ikke mer e ødvedig). E klasse (med utak for klassemetoder og -variabler) er bare e oppskrift på hvilke variabler og metoder vi skal ha i objektee vi lager av dee type. Et objekt lager vi ved å sette ew fora et klasseav og e paretes etter klasseavet (ew Koto(); ). Når vi lager et objekt, kaller vi samtidig kostruktør-metode til klasse for å iitiere data, mm. E peker er e ekel variabel som ieholder adresse til et objekt. Peker-vatriable deklareres med klasseavet først, deretter avet på pekere: Koto k2; 15 ull eller eller 16

5 Objekter, klasser og pekere forts (1) Når vi sier ew på e klasse, retureres adresse (pekere) til objektet. Dee fager vi opp med e tilordig til e peker-variabel k2 = ew Koto (); Objekter som ikke har mist e peker som peker på seg, blir fjeret år klasses kostruktør-metode er ferdig med kode si. Adgag til iholdet (variabler, pekere og metoder) i et objekt får vi ved å gå via e peker til objektet, etterfulgt av puktum og så avet på e variabel eller metode ie i objektet k2.setti (100); De variable vi deklarerer i e klasse, kalles objektvariabler, og det blir laget ett eksemplar av disse for hvert av objektee vi lager med ew. E metode i et objekt kalles e objektmetode og er kyttet til objektet, og er ikke tilgjegelig ute via e peker til objektet eller fra e objektmetode i samme objekt. Objekter, klasser og pekere forts (2). Objekter av samme klasse har objektmetoder med samme av, og vi teger og teker oss at metodee fies i alle objekter som lages. I virkelighete er ikke kode duplisert i alle objektee, me fies bare ett sted, felles for alle objekter av samme klasse. Setter vi static fora deklarasjoe av e variabel eller metode, får vi e klassevariabel eller klassemetode. Det vil da være laget bare ett eksemplar av hver slik klassevariabel kyttet til selve klasseavet. Vi teger disse é gag i klasse-datastrukture som vi teger som e stiplet boks. I e klassemetode ka ma ikke bruke objektmetoder eller objektvariabler i ege klasse (med midre ma har e peker til et slikt objekt og bruker dee pekere) Filbehadlig Å skrive til fil liker svært mye på å skrive til skjerm. Filreferase opprettes slik: Out ut = ew Out("filav"); Resultatet er e y fil med det oppgitte filavet. Etter at skrivig til fil er ferdig, må file lukkes. Metode for dette heter close. ut.close(); Lesig fra fil er parallelt med lesig fra tastatur, og ma har de samme metodee til rådighet.. Referase til file lages med I ifil = ew I("filav"); Ilesig fra fil gjøres ormalt i e løkke hvor ma ete tester for slutt på file, for slutt på tekst-deler, eller for teg avhegig av hvorda ma leser fra file; lije-vis ( readlie() og edoffile() ), ord/item (iit(), iword(), idouble() ) tegvis (ichar() og edoffile()). UML-diagrammer (Uified Modelig Laguage) Objektdiagram brukes i læreboka (vi skal stort sett bruke java datastrukturtegiger istede): Klassediagram: 19 Mer este forelesig Fra problem til program UML + MVC (Model View - Cotrol) 20

6 Repetisjo Hva skjer ie i e datamaski år et Javaprogram blir utført? Masse elektroer farer rudt Umulig å skjøe Vi skal tege det som foregår ie i datamaskie år Javaprogrammet vårt blir utført Vi kaller det Java datastrukturtegiger Alle som programmerer må ha fullstedig oversikt over det som foregår ie i maskie Når jeg programmerer ser jeg for meg det som skal foregå ie i maskie og skriver Java-istruksjoer for å få det til. Noe gager teker jeg meg hvorda Java datastrukture ser ut, adre gager teger jeg de (mer eller midre fullstedig) på papir 21 Program for salg av biler. public class BilSalg{ static salgsobjekt; public static void mai (Strig [ ] args) { salgsobjekt = ew BilSalg ( ); BilSalg ( ) { it atallsteib; Bil steist = ew Bil ( ); Bil oleso = ew Bil ( ) ; steist.foresporsel ( ); oleso.foresporsel ( ); steist.foresporsel ( ); atallsteib = steist.fiatforesp(); System.out.pritl("Atall forespørsler på + Steis Toyota er " + steist.fiatforsp()); System.out.pritl("Atall forespørsler totalt + er å " + Bil.fiTotal( ) ); //slutt kostruktør // slutt BilSalg class Bil { static private it total = 0; private it atforesporsler = 0; static it fitotal ( ) { retur total; void foresporsel ( ) { atforesporsler ++; total ++; it fiatforesp ( ) { retur atforesporsler; //slutt Bil 22 Vi skiller mellom Klasse-deklarasjoe i programtekste. De er et møster som brukes både år klassedatastrukture lages (i det programmet starter opp) og seere år ye objekter lages. Klasse-datastrukture, dvs. de (stiplete) datastrukture som lages i det programmet starte Objekt-datastrukture (også bare kalt objekter eller klasse-objekter) som lages hver gag vi sier ew. Utrolig Viktig! 23 BilSalg klassedatastruktur Nav: salgsobjekt mai Type: BilSalg salgsobjekt = ew BilSalg ( ); BilSalg( ) steist Type: Bil Type: Bil it atallsteib; Bil steist = ew Bil ( ); BilSalg-objekt oleso atallsteib it Bil oleso = ew Bil ( ) ; steist.foresporsel ( ); oleso.foresporsel ( ); steist.foresporsel ( ); atallsteib = steist.fiatforesp(); System.out.pritl("Atall forespørsler på + Steis Toyota er " + steit.fiatforsp()); System.out.pritl("Atall forespørsler totalt + er å " + Bil.fiTotal( ) ); Bil-objekt av: atforesporsler 012 type: it void foresporsel( ) atforesporsler ++; total ++; it fiatforesp( ) retur (atforesporsler); Atall forespørsler på Steis Toyota er 2 Atall forespørsler totalt er å 3 Bil klassedatastruktur Nav: total Type: it fitotal retur total; Bil-objekt av: atforesporsler 01 type: it void foresporsel( ) atforesporsler ++; total ++; it fiatforesp( ) retur (atforesporsler); 24

7 Mer tegig (ikke så godt eksempel) class Tull { it tall = 11; static it statt = 12; Java datastruktur-tegig ved kjørig av BrukTull Java datastrukturtegiger m/parametre File heter BrukTull.java Oversettes og kjøres med >javac BrukTull.java >java BrukTull Oversettere lager to filer: BrukTull.class og Tull.class Java fiklig public void skrivt (it tl) { it sum; sum = tall + statt + BrukTull.tall1 + tl; System.out.pritl("Summe er " + sum); // slutt Tull public class BrukTull { static it tall1 = 16; static it tall2 = 10; it ubrukt = 15; public static void mai(strig [ ] args) { Tull testpeker; tall1 = 13; testpeker = ew Tull( ); testpeker.skrivt(tall2+4); // slutt BrukTull 25 klassedatastruktur BrukTull mai av: args av: tall type: it av: tall2 10 type: it type: Strig[] av: testpeker type: Tull tall1 = 13; testpeker = ew Tull( ); testpeker.skrivt(tall2+4); av: statt 12 type: it Objekt av klasse Tull skrivt(it tl) Summe er 50 av: tall 11 type: it av: sum 50 type: it av: tl 14 type: it Klassedatastruktur Tull sum = tall + statt + BrukTull.tall1 + tl; System.out.pritl( Summe er + sum); 26

INF våren 2005 Uke 1, 11 jan - Praktisk, oversikt og forutsetninger

INF våren 2005 Uke 1, 11 jan - Praktisk, oversikt og forutsetninger INF1010 - våre 2005 Uke 1, 11 ja - Praktisk, oversikt og forutsetiger Stei Gjessig og Stei Michael Storleer Ist. for iformatikk Om INF1010 Forutsetter INF1000 (eller tilsvarede som Humit1700?) Lærebok

Detaljer

Om Grafiske Bruker-Grensesnitt (GUI) Hvordan gjør vi det, to typer av vinduer? GUI (Graphical User Interface)-programmering

Om Grafiske Bruker-Grensesnitt (GUI) Hvordan gjør vi det, to typer av vinduer? GUI (Graphical User Interface)-programmering Uke9. mars 2005 rafisk brukergresesitt med Swig og awt Litt Modell Utsy - Kotroll Del I Stei jessig Ist for Iformatikk Uiv. i Oslo UI (raphical User Iterface)-programmerig I dag Hvorda få laget et vidu

Detaljer

Velkommen til. INF våren 2016

Velkommen til. INF våren 2016 Velkommen til INF1010 - våren 2016 Denne uken (onsdag og torsdag): Om INF1010 Java datastrukturer Klasser med parametre i Java Stein Gjessing Institutt for informatikk Universitetet i Oslo 1 1 INF1010

Detaljer

Hvordan gjør vi det, to typer av vinduer? Om Grafiske Bruker-Grensesnitt (GUI) GUI (Graphical User Interface)-programmering

Hvordan gjør vi det, to typer av vinduer? Om Grafiske Bruker-Grensesnitt (GUI) GUI (Graphical User Interface)-programmering GUI (Graphical User Iterface)-programmerig Uke 11 13. mars 2007 Grafisk brukergresesitt med Swig og awt Litt Modell Utsy - Kotroll Del I Stei Gjessig Ist for Iformatikk Uiv. i Oslo I dag (så lagt vi kommer)

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

INF1010 våren 2017 Torsdag 26. januar. Arv og subklasser del 1. Stein Gjessing Institutt for informatikk Universitetet i Oslo

INF1010 våren 2017 Torsdag 26. januar. Arv og subklasser del 1. Stein Gjessing Institutt for informatikk Universitetet i Oslo INF1010 våre 2017 Torsdag 26. jauar Arv og subklasser del 1 Stei Gjessig Istitutt for iformatikk Uiversitetet i Oslo 1 Når du har lært om subklasser ka du programmere med: Første uke: Spesialiserig (og

Detaljer

INF1010 våren 2005 Uke 3, 25. januar Arv og subklasser del I

INF1010 våren 2005 Uke 3, 25. januar Arv og subklasser del I Emeoversikt subklasser INF1010 våre 2005 Uke 3, 25. jauar Arv og subklasser del I Stei Gjessig Istitutt for iformatikk 1 Geeraliserig - spesialiserig Gjebruk av klasser Ved sammesetig (komposisjo) Ved

Detaljer

INF1000: Forelesning 7

INF1000: Forelesning 7 INF1000: Forelesning 7 Klasser og objekter del 2 Konstruktører Static UML REPETISJON 2 Repetisjon Repetisjon forts. Verden består av objekter av ulike typer (klasser). Ofte er det mange objekter av en

Detaljer

Løsningsforslag ukeoppg. 6: 28. sep - 4. okt (INF1000 - Høst 2011)

Løsningsforslag ukeoppg. 6: 28. sep - 4. okt (INF1000 - Høst 2011) Løsningsforslag ukeoppg. 6: 28. sep - 4. okt (INF1000 - Høst 2011) Løsningsforslag til oppgave 7, 8, og 9 mangler Klasser og objekter (kap. 8.1-8.14 i "Rett på Java" 3. utg.) NB! Legg merke til at disse

Detaljer

n / ($$ n 0$$/ $ " 1! <! ')! $ : ; $.+ $.5.+ .!)/!/ ) $.) 6$ 7$, $.5.,.9+- 5.+ 8$ 7$, + - 5.

n / ($$ n 0$$/ $  1! <! ')! $ : ; $.+ $.5.+ .!)/!/ ) $.) 6$ 7$, $.5.,.9+- 5.+ 8$ 7$, + - 5. "# %% & ' ()*,"""). / " %% &%% / ( 0/ " 1 /(232.,..5. 6 7,.5.,. / : ; 5.. )// ).) 8 < ') < 6 6 8 < 8 8 7,.5.,.9 5. 5. 5. 5. 5.. 5..9 /.> DB(?/ ( / (.?/. /?(5@"""6(?( 5@""6 &. A8 6 (."B 3 8 6 ) ("?/& =

Detaljer

Vi lærte sist å lage vinduer. Om å lage et vindu. GUI (Graphical User Interface)-programmering. Inf 1010-2007 GUI - del 2

Vi lærte sist å lage vinduer. Om å lage et vindu. GUI (Graphical User Interface)-programmering. Inf 1010-2007 GUI - del 2 GUI (Graphical User Iterface)-programmerig If 1010-2007 GUI - del 2 Stei Gjessig Ist for Iformatikk Uiv. i Oslo Tidligere Hvorda få laget et vidu på skjerme Grafikk (tegig i viduet) Hvorda legge ulike

Detaljer

Velkommen til. INF våren 2012

Velkommen til. INF våren 2012 Velkommen til INF1010 - våren 2012 I dag: Java datastrukturer Stein Gjessing Institutt for informatikk Universitetet i Oslo 1 1 I INF1010 skal du lære Å lage gode programmer Objektorientert programmering

Detaljer

INF1000: Forelesning 7. Konstruktører Static

INF1000: Forelesning 7. Konstruktører Static INF1000: Forelesning 7 Klasser og objekter del 2 Konstruktører Static UML REPETISJON 2 Repetisjon Verden består av objekter av ulike typer (klasser). Ofte er det mange objekter av en bestemt type. Objekter

Detaljer

13.09.2012 LITT OM OPPLEGGET. INF1000 EKSTRATILBUD Stoff fra uke 1-3 12. September 2012 Siri Moe Jensen EKSEMPLER

13.09.2012 LITT OM OPPLEGGET. INF1000 EKSTRATILBUD Stoff fra uke 1-3 12. September 2012 Siri Moe Jensen EKSEMPLER .9.22 LITT OM OPPLEGGET INF EKSTRATILBUD Stoff fra uke - 2. September 22 Siri Moe Jensen Målgruppe: De som mangler forståelse for konseptene gjennomgått så langt. Trening får du ved å jobbe med oppgaver,

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO UNIVERSITETET I OSLO BOKMÅL Det matematisk-naturvitenskapelige fakultet Eksamen i : Eksamensdag : Torsdag 2. desember 2004 Tid for eksamen : 09.00 12.00 Oppgavesettet er på : Vedlegg : Tillatte hjelpemidler

Detaljer

Tre måter å lese fra terminal. Java 4. Eksempel. Formatert utskrift til skjerm

Tre måter å lese fra terminal. Java 4. Eksempel. Formatert utskrift til skjerm Mer om easyio Mer om forgreninger Løkker 7. september 2004 Ole Christian Lingjærde Gruppen for bioinformatikk Institutt for informatikk Universitetet i Oslo Java 4 1 Tre måter å lese fra terminal Først:

Detaljer

INF1000 (Uke 5) Mer om løkker, arrayer og metoder

INF1000 (Uke 5) Mer om løkker, arrayer og metoder INF1000 (Uke 5) Mer om løkker, arrayer og metoder Grunnkurs i programmering Institutt for Informatikk Universitetet i Oslo Anja Bråthen Kristoffersen og Are Magnus Bruaset Praktisk informasjon Når disse

Detaljer

2 Om statiske variable/konstanter og statiske metoder.

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

Detaljer

IN1010 våren 2018 Tirsdag 13. februar. Interface - Grensesnitt

IN1010 våren 2018 Tirsdag 13. februar. Interface - Grensesnitt IN1010 våre 2018 Tirsdag 13. februar Iterface - Gresesitt Stei Gjessig Dages hovedtema Egelsk: Iterface (også et Java-ord) Norsk: Gresesitt Les otatet Gresesitt i Java av Stei Gjessig To motivasjoer for

Detaljer

INF våren 2004 Uke2, 18 jan - Fra problem til program. Utvikling av store datasystemer. 13 UML-diagrammer. Oversikt:

INF våren 2004 Uke2, 18 jan - Fra problem til program. Utvikling av store datasystemer. 13 UML-diagrammer. Oversikt: 13 UML-diagrammer INF1010 - våre 2004 Uke2, 18 ja - Fra problem til program Objektdiagram: Vi kommer til å tege Java datastrukturer istede. Stei Gjessig Ist. for iformatikk Klassediagram: Oversikt: Utviklig

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 2017 Torsdag 9. februar. Interface - Grensesnitt

INF1010 våren 2017 Torsdag 9. februar. Interface - Grensesnitt INF1010 våre 2017 Torsdag 9. februar Iterface - Gresesitt og litt om geeriske klasser og geeriske iterface hvis tid Stei Gjessig Dages hovedtema Egelsk: Iterface (også et Java-ord) Norsk: Gresesitt Les

Detaljer

INF 1000 høsten 2011 Uke september

INF 1000 høsten 2011 Uke september INF 1000 høsten 2011 Uke 2 30. september Grunnkurs i Objektorientert Programmering Institutt for Informatikk Universitetet i Oslo Siri Moe Jensen og Arne Maus 1 INF1000 undervisningen Forelesningene: Første

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

INF1000 undervisningen INF 1000 høsten 2011 Uke september

INF1000 undervisningen INF 1000 høsten 2011 Uke september INF1000 undervisningen INF 1000 høsten 2011 Uke 2 30. september Grunnkurs i Objektorientert Programmering Institutt for Informatikk Universitetet i Oslo Siri Moe Jensen og Arne Maus Forelesningene: Første

Detaljer

Objekter. Uke 8 - Objekter, klasser og pekere. Verden består av mange objekter, noen ganske like, noen ulike. Klasser og objekter i verden

Objekter. Uke 8 - Objekter, klasser og pekere. Verden består av mange objekter, noen ganske like, noen ulike. Klasser og objekter i verden Objekter Uke 8 - Objekter, klasser og pekere Hvorfor deler vi verden inn i enheter når vi snakker om den? En blomst, fjorten trær, ti mennesker, en bil, en vei, mange murstein, en bankkonti,... Svar :

Detaljer

EKSAMEN Løsningsforslag

EKSAMEN Løsningsforslag ..4 EKSAMEN Løsigsforslag Emekode: ITF75 Dato: 6. desember Eme: Matematikk for IT Eksamestid: kl 9. til kl. Hjelpemidler: To A4-ark med valgfritt ihold på begge sider. Kalkulator er ikke tillatt. Faglærer:

Detaljer

Velkommen til INF våren 2011

Velkommen til INF våren 2011 Velkommen til INF1010 - våren 2011 Stein Gjessing & Stein Michael Storleer Institutt for informatikk Universitetet i Oslo 1 0( I INF1010 skal du lære! Å lage gode programmer! Objektorientert programmering!

Detaljer

Praktisk informasjon. I dag. Repetisjon: While-løkker. INF1000 (Uke 5) Mer om løkker, arrayer og metoder

Praktisk informasjon. I dag. Repetisjon: While-løkker. INF1000 (Uke 5) Mer om løkker, arrayer og metoder Praktisk informasjon INF (Uke 5) Mer om løkker, arrayer og metoder Grunnkurs i programmering Institutt for Informatikk Universitetet i Oslo Når disse timene er over har du lært nok til å løse oblig Frist.

Detaljer

IN3030 Uke 12, v2019. Eric Jul PSE, Inst. for informatikk

IN3030 Uke 12, v2019. Eric Jul PSE, Inst. for informatikk IN3030 Uke 12, v2019 Eric Jul PSE, Ist. for iformatikk 1 Hva skal vi se på i Uke 12 Review Radix sort Oblig 4 Text Program Parallellizig 2 Oblig 4 Radix sort Parallelliser Radix-sorterig med fra 1 5 sifre

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

Innhold. Forord Det første programmet Variabler, tilordninger og uttrykk Innlesing og utskrift...49

Innhold. Forord Det første programmet Variabler, tilordninger og uttrykk Innlesing og utskrift...49 Innhold Forord...5 1 Det første programmet...15 1.1 Å kommunisere med en datamaskin 16 1.2 Programmeringsspråk 17 1.3 Et program som skriver på skjermen 18 1.4 Kompilering og kjøring 19 1.5 Kommentarer

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

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

Tråder i Java Parallelle programmmer og programbiter

Tråder i Java Parallelle programmmer og programbiter Oversikt Tråder i Java Parallelle programmmer og programbiter Stei Gjessig, Ist. for iformatikk, Uiv. i Oslo Hva er parallelle programmer? Hvorfor parallelle programmer? Hvorda ka dette skje i e maski

Detaljer

IN1010 våren 2019 Onsdag 6. februar. Arv og subklasser - del 2

IN1010 våren 2019 Onsdag 6. februar. Arv og subklasser - del 2 IN1010 våre 2019 Osdag 6. februar Arv og subklasser - del 2 Stei Gjessig Dages tema Virtuelle metoder som er det samme som Polymorfi Når bruker vi arv / år bruker vi komposisjo Kostruktører i subklasser

Detaljer

UNIVERSITETET I OSLO

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

Detaljer

Duo HOME Duo OFFICE. Programmerings manual NO 65.044.30-1

Duo HOME Duo OFFICE. Programmerings manual NO 65.044.30-1 Duo HOME Duo OFFICE Programmerigs maual NO 65.044.30-1 INNHOLD Tekisk data Side 2 Systemiformasjo, brukere Side 3-4 Legge til og slette brukere Side 5-7 Edrig av sikkerhetsivå Side 8 Programmere: Nødkode

Detaljer

IN våren 2019 Onsdag 16. januar

IN våren 2019 Onsdag 16. januar IN1010 - våren 2019 Onsdag 16. januar Java Objekter og klasser Stein Gjessing Universitetet i Oslo 1 1 IN1010: Objektorientert programmering Hva er et objekt? Hva er en klasse? Aller enkleste eksempel

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

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

INF1000: Forelesning 11. Oppgave 2. Oppgave 1. Husk å melde deg på prøveeksamen i INF1000! Ole Christian Lingjærde 7.november 2006

INF1000: Forelesning 11. Oppgave 2. Oppgave 1. Husk å melde deg på prøveeksamen i INF1000! Ole Christian Lingjærde 7.november 2006 Husk å melde deg på prøveeksamen i INF1000! INF1000: Forelesning 11 Ole Christian Lingjærde 7.november 2006 Frist påmelding: 16. november Arrangementet er torsdag 23. november kl 1420 og omfatter: Oppgaven

Detaljer

Uke 12 IN3030 v2019. Eric Jul PSE-gruppa Ifi, UiO

Uke 12 IN3030 v2019. Eric Jul PSE-gruppa Ifi, UiO Uke 12 IN3030 v2019 Eric Jul PSE-gruppa Ifi, UiO Oblig 5 Kovekse Ihylliga Itroduksjo De kovekse ihylliga til pukter Oblig 5 Hva er det, defiisjo Hvorda ser de ut Hva brukes de til? Hvorda fier vi de? 24

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

Kort om meg. INF1000 Uke 2. Oversikt. Repetisjon - Introduksjon

Kort om meg. INF1000 Uke 2. Oversikt. Repetisjon - Introduksjon Kort om meg INF1000 Uke 2 Variable, enkle datatyper og tilordning Fredrik Sørensen Kontor: Rom 4311-NR, Informatikkbygget Brukernavn/e-post: fredrso@ifi.uio.no Utdanning: Dataingeniør, 2000 Cand.Scient,

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

Blokker og metoder INF1000 (Uke 6) Metoder

Blokker og metoder INF1000 (Uke 6) Metoder Blokker og metoder INF1000 (Uke 6) Metoder Grunnkurs i programmering Institutt for Informatikk Universitetet i Oslo Are Magnus Bruaset og Arild Waaler En blokk er en samling instruksjoner omgitt av krøllparenteser:

Detaljer

Mer om utvalgsundersøkelser

Mer om utvalgsundersøkelser Mer om utvalgsudersøkelser I uderkapittel 3.6 i læreboka gir vi e kort iførig i takegage ved utvalgsudersøkelser. Vi gir her e grudigere framstillig av temaet. Populasjo og utvalg Ved e utvalgsudersøkelse

Detaljer

Eksempel: Body Mass Index (BMI) Forelesning inf1000 - Java 3. Ferdig program (første del) Ferdig program (siste del)

Eksempel: Body Mass Index (BMI) Forelesning inf1000 - Java 3. Ferdig program (første del) Ferdig program (siste del) Forelesning inf1000 - Java 3 Eksempel: Body Mass Index (BMI) Tema: Mer om forgreninger Løkker Arrayer Litt om easyio Ole Christian Lingjærde, 5. september 2012 Ole Chr. Lingjærde Institutt for informatikk,

Detaljer

Praktisk informasjon. Repetisjon: While-løkker. I dag. INF1000 (Uke 5) Mer om løkker, arrayer og metoder. Oblig 2 er lagt ut

Praktisk informasjon. Repetisjon: While-løkker. I dag. INF1000 (Uke 5) Mer om løkker, arrayer og metoder. Oblig 2 er lagt ut Praktisk informasjon INF (Uke 5) Mer om løkker, arrayer og metoder Oblig er lagt ut Frist 8. februar Kan løses etter denne forelesningen Grunnkurs i programmering Institutt for Informatikk Universitetet

Detaljer

INF1000: noen avsluttende ord

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

Detaljer

INF1000 : Forelesning 3

INF1000 : Forelesning 3 INF1000 : Forelesning 3 Programeksempler Løkker Arrayer Ole Christian Lingjærde Biomedisinsk forskningsgruppe Institutt for informatikk Universitetet i Oslo 1 Body Mass Index (BMI) Vi skal lage et program

Detaljer

IN våren 2018 Tirsdag 16. januar

IN våren 2018 Tirsdag 16. januar IN1010 - våren 2018 Tirsdag 16. januar Java Objekter og klasser Stein Gjessing Universitetet i Oslo 1 1 IN1010: Objektorientert programmering Hva er et objekt? Hva er en klasse? Aller enkleste eksempel

Detaljer

Java 4. Mer om easyio Mer om forgreninger Løkker. 7. september 2004

Java 4. Mer om easyio Mer om forgreninger Løkker. 7. september 2004 Java 4 Mer om easyio Mer om forgreninger Løkker 7. september 2004 Ole Christian Lingjærde Gruppen for bioinformatikk Institutt for informatikk Universitetet i Oslo 1 Tre måter å lese fra terminal Først:

Detaljer

INF2440 Uke 5, våren2018. Eric Jul PSE Inst. for informatikk

INF2440 Uke 5, våren2018. Eric Jul PSE Inst. for informatikk INF2440 Uke 5, våre2018 Eric Jul PSE Ist. for iformatikk 1 Hva så vi på i Uke4 1. Kommetarer om matrise-multiplikasjo 2. Hvorfor vi ikke bruker PRAM modelle for parallelle beregiger som skal gå fort. 3.

Detaljer

De neste ukene. INF1000 Uke 12. Prøveeksamen. Nå - Prøveeksamen. Forelesning om IT og samfunn neste uke (13/11).

De neste ukene. INF1000 Uke 12. Prøveeksamen. Nå - Prøveeksamen. Forelesning om IT og samfunn neste uke (13/11). De neste ukene Forelesning om IT og samfunn neste uke (13/11). INF1000 Uke 12 Gjennomgang av prøveeksamen fra høsten 2004 Ukeoppgave: Blir en gammel eksamensoppgave Uken etter er det prøveeksamen. Den

Detaljer

Litt mer om uttrykk: ++ og -- INF1000 : Forelesning 4. Oppgave. Blokker. 0 udefinert udefinert. Alternativ 2 Postfiks-operator

Litt mer om uttrykk: ++ og -- INF1000 : Forelesning 4. Oppgave. Blokker. 0 udefinert udefinert. Alternativ 2 Postfiks-operator Litt mer om uttrykk: ++ og -- INF : Forelesning Løkker og arrayer Mye og viktig stoff. Du MÅ løse oppgaver selv for å lære!. september 6 Ole Christian Lingjærde Gruppen for bioinformatikk Institutt for

Detaljer

Faglærer går normalt én runde gjennom lokalet. Ha evt. spørsmål klare!

Faglærer går normalt én runde gjennom lokalet. Ha evt. spørsmål klare! Side 1 av 6 Noe viktige pukter: (i) (ii) (iii) (iv) Les hele eksamessettet øye før du begyer! Faglærer går ormalt é rude gjeom lokalet. Ha evt. spørsmål klare! Skriv svaree die i svarrutee og levér i oppgavearket.

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

Body Mass Index (BMI) INF1000 : Forelesning 3. Ferdig program (forts.) Ferdig program

Body Mass Index (BMI) INF1000 : Forelesning 3. Ferdig program (forts.) Ferdig program Body Mass Index (BMI) Programeksempler Løkker Arrayer Ole Christian Lingjærde Biomedisinsk forskningsgruppe Institutt for informatikk Universitetet i Oslo INF1000 : Forelesning 3 1 Vi skal lage et program

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

Kapittel 10 fra læreboka Grafer

Kapittel 10 fra læreboka Grafer Forelesigsotat i Diskret matematikk torsdag 6. oktober 017 Kapittel 10 fra læreboka Grafer (utdrag) E graf er e samlig pukter (oder) og kater mellom puktee (eg. odes, vertex, edge). E graf kalles rettet

Detaljer

AVDELING FOR INGENIØRUTDANNING EKSAMENSOPPGAVE

AVDELING FOR INGENIØRUTDANNING EKSAMENSOPPGAVE AVDELING FOR INGENIØRUTDANNING EKSAMENSOPPGAVE Eme: Diskret matematikk Gruppe(r): Emekode: FO 019A Dato: 12.12.200 Faglig veileder: Ulf Uttersrud Eksamestid: 9-14 Eksamesoppgave består av: Atall sider

Detaljer

INF1000 Uke 4. Innlesning fra terminal. Uttrykk og presedens. Oversikt

INF1000 Uke 4. Innlesning fra terminal. Uttrykk og presedens. Oversikt Oversikt INF1000 Uke 4 Forgreininger, løkker og arrayer Litt repetisjon Blokker og forgreininger if-setninger if-else-setninger switch-setninger Løkker while-løkker do-while-løkker for-løkker Arrayer Opprette,

Detaljer

INF Forelesning oppsummering forts. Et meget enkelt banksystem. Oppsummering om klasser, objekter, pekere og.

INF Forelesning oppsummering forts. Et meget enkelt banksystem. Oppsummering om klasser, objekter, pekere og. Oppsummering om klasser, objekter, pekere og. INF1000 - Forelesning 7 - Litt repetisjon fra forelesning 6 - Gjennomgang av BankSystem med full kode - Mer om klasser og objekter -UML 1. mars 2010 Christian

Detaljer

Uke 7 - Objekter, klasser og pekere (+ litt først om args[])

Uke 7 - Objekter, klasser og pekere (+ litt først om args[]) Uke 7 - Objekter, klasser og pekere (+ litt først om args[]) (forelesning 6 i INF1000 h2013) 3.okt. 2013, Arne Maus Inst. for informatikk, UiO 1 Først: Parametre til oppstart av programmet, String [] args

Detaljer

Del 1 En oversikt over C-programmering

Del 1 En oversikt over C-programmering Del 1 En oversikt over C-programmering 1 RR 2016 Starten C ble utviklet mellom 1969 og 1973 for å re-implementere Unix operativsystemet. Er et strukturert programmeringsspråk, hvor program bygges opp av

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet PRØVEEKSAMEN i INF1000 23. november 2004 kl. 14.00 17.00 Dine svar skal skrives på disse oppgavearkene, og ikke på separate ark. Dette gjelder

Detaljer

Eksempeloppgave 2014. REA3028 Matematikk S2 Eksempel på eksamen våren 2015 etter ny ordning. Ny eksamensordning. Del 1: 3 timer (uten hjelpemidler)

Eksempeloppgave 2014. REA3028 Matematikk S2 Eksempel på eksamen våren 2015 etter ny ordning. Ny eksamensordning. Del 1: 3 timer (uten hjelpemidler) Eksempeloppgave 2014 REA3028 Matematikk S2 Eksempel på eksame våre 2015 etter y ordig Ny eksamesordig Del 1: 3 timer (ute hjelpemidler) Del 2: 2 timer (med hjelpemidler) Mistekrav til digitale verktøy

Detaljer

Innhold uke 3. INF 1000 høsten 2011 Uke 3 6. september. Uttrykk. Variabel: En plass i hukommelsen

Innhold uke 3. INF 1000 høsten 2011 Uke 3 6. september. Uttrykk. Variabel: En plass i hukommelsen høsten 20 Uke 3 6. september Grunnkurs i Objektorientert Programmering Institutt for Informatikk Universitetet i Oslo Siri Moe Jensen og Arne Maus Innhold uke 3 Rep: variable og uttrykk Konvertering Å

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

Konstruktører. Bruk av konstruktører når vi opererer med "enkle" klasser er ganske ukomplisert. Når vi skriver. skjer følgende:

Konstruktører. Bruk av konstruktører når vi opererer med enkle klasser er ganske ukomplisert. Når vi skriver. skjer følgende: Konstruktører Bruk av konstruktører når vi opererer med "enkle" klasser er ganske ukomplisert. Når vi skriver Punkt p = new Punkt(3,4); class Punkt { skjer følgende: int x, y; 1. Det settes av plass i

Detaljer

Påliteligheten til en stikkprøve

Påliteligheten til en stikkprøve Pålitelighete til e stikkprøve Om origiale... 1 Beskrivelse... 2 Oppgaver... 4 Løsigsforslag... 4 Didaktisk bakgru... 5 Om origiale "Zuverlässigkeit eier Stichprobe" på http://www.mathe-olie.at/galerie/wstat2/stichprobe/dee

Detaljer

INF 1000 høsten 2011 Uke 3 6. september

INF 1000 høsten 2011 Uke 3 6. september INF 1000 høsten 2011 Uke 3 6. september Grunnkurs i Objektorientert Programmering Institutt for Informatikk Universitetet i Oslo Siri Moe Jensen og Arne Maus 1 Innhold uke 3 Rep: variable og uttrykk Konvertering

Detaljer

Innhold uke 4. INF 1000 høsten 2011 Uke 4: 13. september. Deklarasjon av peker og opprettelse av arrayobjektet. Representasjon av array i Java

Innhold uke 4. INF 1000 høsten 2011 Uke 4: 13. september. Deklarasjon av peker og opprettelse av arrayobjektet. Representasjon av array i Java INF høsten 2 Uke 4: 3. september Grunnkurs i Objektorientert Programmering Institutt for Informatikk Universitetet i Oslo Siri Moe Jensen og Arne Maus Mål for uke 4: Innhold uke 4 Repetisjon m/ utvidelser:

Detaljer

(MVC - Model, View, Control)

(MVC - Model, View, Control) INF1010 - våren 2008 Modell - Utsyn - Kontroll (MVC - Model, View, Control) Stein Gjessing Inst. for informatikk Et bankprogram Vi skal lage et program som håndterer kontoene i en bank. En konto eies av

Detaljer

Oversikt. INF1000 Forelesning 6. Variable Deklarasjon. Variabel en plass i lageret int radius;

Oversikt. INF1000 Forelesning 6. Variable Deklarasjon. Variabel en plass i lageret int radius; 16022009 Oversikt INF1000 Forelesning 6 Repetisjon Variable Uttrykk Innlesing fra terminal Formatert utskrift til skjerm Skop Forgrening (if/switch) it Løkker (while/do/for) Arrayer Metoder Variabel en

Detaljer

INF2440, Uke 3, våren 2018 Regler for parallelle programmer, mer om cache og Radix-algoritmen. Eric Jul PSE, Inst. for informatikk

INF2440, Uke 3, våren 2018 Regler for parallelle programmer, mer om cache og Radix-algoritmen. Eric Jul PSE, Inst. for informatikk INF2440, Uke 3, våre 2018 Regler for parallelle programmer, mer om cache og Radix-algoritme Eric Jul PSE, Ist. for iformatikk 1 Hva har vi sett på i Uke2 I) Tre måter å avslutte tråder vi har startet.

Detaljer

IN1010 våren 2019 Onsdag 15. mai. Rask repetisjon av subklasser og tråder (pluss µ nytt)

IN1010 våren 2019 Onsdag 15. mai. Rask repetisjon av subklasser og tråder (pluss µ nytt) IN1010 våre 2019 Osdag 15. mai Rask repetisjo av subklasser og tråder (pluss µ ytt) Stei Gjessig Istitutt for iformatikk Uiversitetet i Oslo 1 Iledig Dette er 41 lysark som det ikke er mulig å gå gjeom

Detaljer

INF1000 : Forelesning 1 (del 2)

INF1000 : Forelesning 1 (del 2) INF1000 : Forelesning 1 (del 2) Java Variable og tilordninger Heltall, desimaltall og sannhetsverdier Utskrift på skjerm Ole Christian Lingjærde Gruppen for bioinformatikk Institutt for informatikk Universitetet

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

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

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

Detaljer

I dag INF1000 (Uke 4) Mer om forgreninger, While-løkker. Tre måter å lese fra terminal. Tre måter å lese fra terminal.

I dag INF1000 (Uke 4) Mer om forgreninger, While-løkker. Tre måter å lese fra terminal. Tre måter å lese fra terminal. I dag INF1000 (Uke 4) Mer om forgreninger, While-løkker Grunnkurs i programmering Institutt for Informatikk Universitet i Oslo Repetisjon easyio Enkle if-setninger Mer om forgrening While-løkker Are Magnus

Detaljer

I dag. Rep: Oppsummering - variabler. Rep: Datatyper. INF1000 (Uke 3) Mer om uttrykk, terminal I/O, forgreninger

I dag. Rep: Oppsummering - variabler. Rep: Datatyper. INF1000 (Uke 3) Mer om uttrykk, terminal I/O, forgreninger I dag INF1000 (Uke 3) Mer om uttrykk, terminal I/O, forgreninger Grunnkurs i programmering Institutt for Informatikk Universitet i Oslo Litt repetisjon Mer om uttrykk Lesing og skriving til terminal Forgreninger

Detaljer

INF1000 (Uke 4) Mer om forgreninger, While-løkker

INF1000 (Uke 4) Mer om forgreninger, While-løkker INF1000 (Uke 4) Mer om forgreninger, While-løkker Grunnkurs i programmering Institutt for Informatikk Universitet i Oslo Are Magnus Bruaset og Anja B. Kristoffersen I dag Repetisjon easyio Enkle if-setninger

Detaljer

Innlesning fra tastatur med easyio. INF1000 høst 2010. Vi må først skrive i toppen av programmet: import easyio.*;

Innlesning fra tastatur med easyio. INF1000 høst 2010. Vi må først skrive i toppen av programmet: import easyio.*; Innlesning fra tastatur med easyio INF1000 høst 2010 Forelesning 2: Innlesning fra terminal Boolean-variable if-setninger Løkker Litt mer om heltall: divisjon og modulo Vi må først skrive i toppen av programmet:

Detaljer

Fagdag 2-3mx 24.09.07

Fagdag 2-3mx 24.09.07 Fagdag 2-3mx 24.09.07 Jeg beklager at jeg ikke har fuet oe ye morsomme spill vi ka studere, til gjegjeld skal dere slippe prøve/test dee gage. Istruks: Vi arbeider som valig med 3 persoer på hver gruppe.

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

AVDELING FOR INGENIØRUTDANNING EKSAMENSOPPGAVE

AVDELING FOR INGENIØRUTDANNING EKSAMENSOPPGAVE AVDELING FOR INGENIØRUTDANNING EKSAMENSOPPGAVE Eme: Diskret matematikk Gruppe(r): Eksamesoppgave består av: Atall sider (ikl forside): 5 Emekode: FO 9A Dato: 69 Atall oppgaver: Fagasvarlig: Ulf Uttersrud

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

Av Stein Gjessing, Institutt for informatikk, Universitetet i Oslo

Av Stein Gjessing, Institutt for informatikk, Universitetet i Oslo Gaustadbekkdalen, januar 27 Litt om datastrukturer i Java Av Stein Gjessing, Institutt for informatikk, Universitetet i Oslo Innledning Dette notatet beskriver noe av det som foregår inne i primærlageret

Detaljer

INF1000 : Forelesning 4

INF1000 : Forelesning 4 INF1000 : Forelesning 4 Kort repetisjon av doble (nestede) løkker Mer om 1D-arrayer Introduksjon til 2D-arrayer Metoder Ole Christian Lingjærde Biomedisinsk forskningsgruppe Institutt for informatikk Universitetet

Detaljer

INF1010 UML. Marit Nybakken 26. januar 2004

INF1010 UML. Marit Nybakken 26. januar 2004 INF1010 UML Marit Nybakken marnybak@ifi.uio.no 26. januar 2004 Liten tolkning av UML-kapittelet i læreboka. 1 UML-diagrammer Det finnes mange forskjellige typer UML-diagrammer for å dokumentere og planlegge

Detaljer

INF1000 Forelesning 9. Hashmap Eksempel: Flyreservasjon

INF1000 Forelesning 9. Hashmap Eksempel: Flyreservasjon INF1000 Forelesning 9 Hashmap Eksempel: Flyreservasjon HashMap Ofte har vi flere, mange objekter av en bestemt klasse - eks. : elever på en skole biler som har passert bomringen i Oslo telefonsamtaler

Detaljer

i=0 i=1 Repetisjon: nesting av løkker INF1000 : Forelesning 4 Repetisjon: nesting av løkker Repetisjon: nesting av løkker j=0 j=1 j=2 j=3 j=4

i=0 i=1 Repetisjon: nesting av løkker INF1000 : Forelesning 4 Repetisjon: nesting av løkker Repetisjon: nesting av løkker j=0 j=1 j=2 j=3 j=4 Repetisjon: nesting av løkker Kort repetisjon av doble (nestede) løkker Mer om D-arrayer Introduksjon til D-arrayer Metoder Ole Christian Lingjærde Biomedisinsk forskningsgruppe Institutt for informatikk

Detaljer

Eksamen høsten 2003 Den store bøygen i INF1000 er de obligatoriske oppgavene.

Eksamen høsten 2003 Den store bøygen i INF1000 er de obligatoriske oppgavene. Eksamen høsten 2003 Den store bøygen i INF1000 er de obligatoriske oppgavene. Hovedformålet med eksamen er å skille ut de som har skjønt litt om programmering fra de som ikke har skjønt noe. For de som

Detaljer

I dag INF1000 (Uke 4) Mer om forgreninger, While-løkker. Tre måter å lese fra terminal. Repetisjon. Mer om forgrening While-løkker

I dag INF1000 (Uke 4) Mer om forgreninger, While-løkker. Tre måter å lese fra terminal. Repetisjon. Mer om forgrening While-løkker I dag INF1000 (Uke 4) Mer om forgreninger, While-løkker Grunnkurs i programmering Institutt for Informatikk Universitet i Oslo Repetisjon easyio Enkle if-setninger Mer om forgrening While-løkker Are Magnus

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

HashMap. INF1000 Forelesning 9. Ulike versjoner i Java 1.4 (gammel) og Java 1.5/1.6 av HashMap. Objekter lagres med en søkenøkkel

HashMap. INF1000 Forelesning 9. Ulike versjoner i Java 1.4 (gammel) og Java 1.5/1.6 av HashMap. Objekter lagres med en søkenøkkel HashMap INF1000 Forelesning 9 Hashmap Eksempel: Flyreservasjon Ofte har vi flere, mange objekter av en bestemt klasse - eks. : elever på en skole biler som har passert bomringen i Oslo telefonsamtaler

Detaljer

Endret litt som ukeoppgave i INF1010 våren 2004

Endret litt som ukeoppgave i INF1010 våren 2004 Endret litt som ukeoppgave i INF1010 våren 2004!!!" # # $# ##!!%# # &##!'! Kontroller at oppgavesettet er komplett før du begynner å besvare det. Les gjerne gjennom hele oppgavesettet før du begynner med

Detaljer