Innhold. INF1001 Høst Hva skal evalueres? Fra kurssidene. Uke 13: Repetisjon og pensumgjennomgang

Like dokumenter
Innhold. IN1000 Høst Hva skal evalueres? Fra kurssidene. Uke 12: Pensumgjennomgang og eksamenstips

Innhold. Hva skal evalueres? Fra kurssidene. Kapittel 1: Introduction

Innhold. INF1000 Høst Hva skal evalueres? Fra kurssidene. Hvorfor har vi en lærebok? Uke 11: Repetisjon og pensumgjennomgang

INF1000 Eksamensforberedelser og -tips. Høst 2014 Siri Moe Jensen

Læreboken på 45 minutter

Velkommen til. IN1010 Objektorientert programmering Våren 2018

Velkommen til. INF våren 2017

IN1010 Objektorientert programmering Våren 2019

Et lite oppdrag i bakgrunnen

Innhold uke 7. Objektorientert programmering i Python: Introduksjon. Lite tilbakeblikk: Programflyt og skop. Lite tilbakeblikk: Funksjoner er uttrykk

Uke 8 Eksamenseksempler + Ilan Villanger om studiestrategier. 11. okt Siri Moe Jensen Inst. for informatikk, UiO

Objektorientert programmering i Python. Resten av semesteret. Innhold uke 9 Mer komplekse strukturer. Referanser og objekter, inkl Mentimeter spørsmål

IN uke 1. Komme i gang med programmering

Velkommen! I dag. Viktige beskjeder. Studieadministrasjonen. IN Høst Siri Moe Jensen Geir Kjetil Sandve Henrik Hillestad

Innhold uke 9. Objektorientert programmering i Python. Om ukens pensum. Referanser og objekter Tema: Mer komplekse strukturer

Objektorientert programmering i Python

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

UNIVERSITETET I OSLO

IN uke 1. Komme i gang med programmering

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

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

Hvorfor objektorientert programmering?

Innhold uke 8. Objekter: Bruk og intern organisering. Beskjeder: Oblig 1 6. Beskjeder: Oblig 7 (og 8)

Innhold uke 10. Objektorientert programmering i Python. Oblig 7 og 8. IN1000 Seminar! IN1000 Høst 2018 uke 10 Siri Moe Jensen

UNIVERSITETET I OSLO

Informasjon Prøveeksamen i IN1000 høsten 2018

Hvordan løse problemer med programmering?

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

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

Innhold. INF1000 Høst Unified Modeling Language (UML) Unified Modeling Language (UML)

INF1000: noen avsluttende ord

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

INF2810: Funksjonell Programmering

Variabler, input og beslutninger

INF2810: Funksjonell Programmering

INF2810: Funksjonell Programmering. Oppsummering og eksamensforberedelser

INF2810: Funksjonell Programmering. Oppsummering og eksamensforberedelser

Løse reelle problemer

UNIVERSITETET I OSLO

TDT4110 Informasjonsteknologi grunnkurs: Kapittel 7 Filer og unntak ( exceptions ) Professor Alf Inge Wang Stipendiat Lars Bungum

Oversikt. Informatikk. INF1000: Grunnkurs i objektorientert programmering. Utenom INF1000 Informasjon & hjelp

INF1000 Prøveeksamen Oppgave 7 og 9

Mål. Pensum. TDT4110 Informasjonsteknologi grunnkurs: Tema: Dictionaries og sets (mengder) Utgave 3: Kap. 9. Terje Rydland - IDI/NTNU

LITT OM OPPLEGGET. INF1000 EKSTRATILBUD Stoff fra uke September 2012 Siri Moe Jensen EKSEMPLER

TDT4105 Informasjonsteknologi, grunnkurs

INF Uke 10. Ukesoppgaver oktober 2012

VELKOMMEN TIL MAT-INF1100(L) Knut Mørken Rom 1033, Niels Henrik Abels hus

INF1000 undervisningen INF 1000 høsten 2011 Uke september

INF 1000 høsten 2011 Uke september

MAT1030 Plenumsregning 1

Finne ut om en løsning er helt riktig og korrigere ved behov

Python: Intro til funksjoner. TDT4110 IT Grunnkurs Professor Guttorm Sindre

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

INF1000 Eksamen 2014 (modifisert)

UNIVERSITETET I OSLO

MAT1030 Diskret Matematikk

MAT-INF 1100: Obligatorisk oppgave 1

UNIVERSITETET I OSLO

TDT4110 Informasjonsteknologi grunnkurs: Tema: Dictionaries og mengder (sets) - Kapittel 9. Professor Alf Inge Wang

INF2810: Funksjonell Programmering

Mål. Pensum. TDT4110 Informasjonsteknologi grunnkurs: Tema: Unntak (exceptions) (Kap 6) Dictionaries (Kap. 9) Terje Rydland - IDI/NTNU

AlgDat 12. Forelesning 2. Gunnar Misund

INF Innleveringsoppgave 6

MENGDER (SETS) Læringsmål og pensum. Kapittel 9.2

TDT4127 Programmering og Numerikk

INF2810: Funksjonell Programmering

Læringsmål uke 7. Introduksjon til objektorientert programmering. Paradigmet objektorientering. Objektreferanser. INF1001 Høst 2016 Uke 7

Python: Løkker. TDT4110 IT Grunnkurs Professor Guttorm Sindre

TDT4110 IT Grunnkurs Høst 2016

MAT-INF 1100: Obligatorisk oppgave 1

Oppsummering fra sist

TDT4110 IT Grunnkurs Høst 2016

UNIVERSITETET I OSLO

IN uke 2. Presis forståelse av programmering

Repetisjon Novice Videregående Python PDF

Finne ut om en løsning er helt riktig og korrigere ved behov

INF Obligatorisk innlevering 7

INF2810: Funksjonell Programmering. Oppsummering og eksamensforberedelser

INF1000: noen avsluttende ord

Plenumsregning 1. MAT1030 Diskret Matematikk. Repetisjon: Algoritmer og pseudokode. Velkommen til plenumsregning for MAT1030

Oppgaver uke 1: Løsningsforslag

IN uke 1. Komme i gang med programmering

INF2810: Funksjonell Programmering. Oppsummering og eksamensforberedelser

Python: Løkker. TDT4110 IT Grunnkurs Professor Guttorm Sindre

UNIVERSITETET I OSLO

Løse reelle problemer

Velkommen til. INF våren 2016

VELKOMMEN TIL MAT-INF1100(L) Knut Mørken Rom 1033, Niels Henrik Abels hus

Eksamensoppgaver 2014

Plenumsregning 1. Kapittel 1. Roger Antonsen januar Velkommen til plenumsregning for MAT1030. Repetisjon: Algoritmer og pseudokode

Mattespill Nybegynner Python PDF

INF2220: Forelesning 1. Praktisk informasjon Analyse av algoritmer (kapittel 2) (Binær)trær (kapittel )

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

Velkommen til BIOS1100

VELKOMMEN TIL MAT-INF1100 og MAT-INF1105. Knut Mørken Rom Ø368, Fysikkbygget

Øvingsforelesning 5 Python (TDT4110)

I denne oppgaven skal vi repetere litt Python-syntaks, det er en god blanding av alle tingene du har lært i Python til nå.

INF120: Oblig 3. Yngve Mardal Moe

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

INF2810: Funksjonell Programmering. En Scheme-evaluator i Scheme, del 2

Transkript:

Innhold INF1001 Høst 2016 Uke 13: Repetisjon og pensumgjennomgang 1. time: Guidet tur gjennom læreboken (og pensum): Sentrale konsepter og mekanismer i Python 2. time: Hva trenger vi utover å lese pensum? Hva vil det si å kunne programmere? Løsing og diskusjon av to konkrete eksempler på oppgave Eksamenstips og informasjon om prøveeksamen Siri Moe Jensen INF1001 - Høst 2016 uke 13 1 Siri Moe Jensen INF1001 - Høst 2016 uke 13 2 Hva skal evalueres? Fra kurssidene Forelesninger, prøveeksamen og obliger viser: Etter å ha tatt INF1001 kan du skrive små til middels store programmer oppdelt i klasser har du grunnleggende ferdigheter i objektorientering i Python med klasser, metoder, objekter og referanser kan du lage programskisser med enkle UML klassediagrammer kan du lage løsninger på mindre, virkelige problemer på én maskin med brukerinteraksjon og lagring av data på disk kan du bruke enkle deler av Pythons standardbibliotek kan du finne og rette feil i egne programmer Overordnet pensum Kapittel 1-9 i Python for Everyone 2/e av Cay Horstmann og Rance Necaise (2. utgave, Wiley 2016). Personopplysningsloven Obliger og det som er forelest (dvs lysark fra forelesningene) Anbefalt bakgrunnslitteratur: Digitale medier av Hannemyr et. al. (3. utgave, Universitetsforlaget 2015). hvilket stoff vi prioriterer fra pensum hvordan vi forventer at du benytter det. På eksamen kan du få: Variasjoner av programmer du har sett før Oppgaver der du må kombinere stoff på måter du ikke har sett før Siri Moe Jensen INF1001 - Høst 2016 uke 13 4 1

Hvorfor har vi en lærebok? Læreboken forteller stort sett mer detaljert enn forelesningene. Det er en fordel å få ting fortalt på flere ulike måter. Læreboken er bedre å slå opp i. Random fact og Special topic er artig å lese og utdyper faget, men er ikke pensum i dette emnet Common error, Programming tip er nyttige og oftest pensum Kapittel 1: Introduction Innholder først og fremst bakgrunnsinformasjon for det som kommer senere. Nyttig også i senere emner, og antakelig lettere å forstå nå enn da dere startet. «Programmering er problemløsing» [PFE: 1.7] Nyttig lærdom: Det første viktige steget i programmering er å omforme problemet til en algoritme, dvs gi det en form som datamaskinen kan løse. Så kan algoritmen skrives i Python Siri Moe Jensen INF1001 - Høst 2016 uke 13 5 Siri Moe Jensen INF1001 - Høst 2016 uke 13 6 Kapittel 2: Programming with numbers and strings Variabler og tilordninger Numeriske uttrykk og typer Lite vekt på behandling av matematiske uttrykk i INF1001 men viktig og nyttig for noen av dere senere. Strenger (tekst), konvertering og streng-metoder Innlesing fra tastatur (input) Kapittel 3: Decisions Dette kapittelet tar for seg det som har med valg å gjøre: if-setninger ulike typer sammenligninger boolske variabler, operatorer og uttrykk Dette må dere kunne bruke i programmering; unntaket er flytskjemaer [PFE: 3.5] som ikke er pensum. Merk at det er flere special topics i kapittelet som ikke er pensum (men som likevel kan være nyttige) Siri Moe Jensen INF1001 - Høst 2016 uke 13 7 Siri Moe Jensen INF1001 - Høst 2016 uke 13 8 2

Kapittel 4: Loops Kapittel 5: Functions Dette er uunnværlige redskaper i en programmerers verktøykasse. Omtrent alle programmer inneholder en løkke. while-løkker går så lenge en betingelse gjelder for-løkker går gjennom hvert element i en samling (f.eks. en liste) Et spesialtilfelle er å gå gjennom en samling tall som kan brukes som indekser i en annen liste: range(0,len(min_liste)) Det er mange "applications" og lignende som ikke er direkte pensum, men som kan være nyttig Nå begynner det å bli mer avansert. Alt i kapittelet er sentralt pensum (unntatt rekursjon [PFE: 5.10]) [PFE: 5.1] om funksjoner som «svarte bokser» for lettere å holde oversikten over programmet. [PFE: 5.2] Hvordan lager og bruker vi funksjoner [PFE: 5.3] Parametre - noe av det aller viktigste i hele kurset! [BJ: 5.4 5.5] Returverdier (det som skiller funksjoner fra prosedyrer) [PFE: 5.7] Hvordan funksjoner bør være. Siri Moe Jensen INF1001 - Høst 2016 uke 13 9 Siri Moe Jensen INF1001 - Høst 2016 uke 13 10 Kapittel 5: Functions (forts) [PFE: 5.7] Problemløsing med stegvis forfining beskriver en god teknikk til å la et program bli til litt etter litt. [PFE: 5.8] En variabels skop er delen av et program en variabel er tilgjengelig. Enkelt sagt: En lokal metodevariabel finnes bare når metoden utføres. Tenk også i forhold til OO Kapittel 6: Lists Lister er en veldig mye brukt datastruktur. [PFE: 6.1] introdusere lister. [PFE: 6.2] viser ulike operasjoner på lister (hvor kun appending Elements er direkte pensum) [PFE: 6.3] gir eksempler på bruk av lister [PFE: 6.4-6.7] er ikke direkte pensum, men poenget i ST3 (i 6.4) må man ha fått med seg (at f.eks. en liste sendt inn som parameter kan bli endret) Kapittel 6.6 er veldig nyttig (også for eksamen) om hvordan tenke når man skal finne løsning til et problem. Siri Moe Jensen INF1001 - Høst 2016 uke 13 11 Siri Moe Jensen INF1001 - Høst 2016 uke 13 12 3

Kapittel 7: Files and exceptions [PFE: 7.1-7.2] Hvordan lese fra og skrive til filer. Vi har i hovedsak basert oss på itererering av linjer (7.2.1) [PFE: 7.3-7.6] Ikke pensum. (kommandolinjeargumenter, binærfiler, unntakshåndtering) Kapittel 8: mengder (set) og ordbøker (dict) [PFE: 8.1] Mengder er ikke direkte pensum, men selvsagt lov å bruke og kan være nyttig [PFE: 8.2] Ordbøker (dict) er pensum og nyttig i mange sammenhenger [PFE: 8.3] Mer komplekse strukturer, f.eks. ordbøker med lister som verdier. Også brukt sammen med OO (mer detaljer i senere slides). Siri Moe Jensen INF1001 - Høst 2016 uke 13 13 Siri Moe Jensen INF1001 - Høst 2016 uke 13 14 Kunnskap Fremgangsmåter, eksempler Kapittel 9: Objects and classes 9.1-9.6 og 9.10: "alt" du trenger å vite om klasser og objekter i Python hopp over Special Topics 1,2 og 3 9.8-9.9 nyttig om hvordan komme fra ide til ferdig oo program 9.11 stort eksempel med en del stoff utenfor pensum, MEN 9.11.3 (Special Methods) er pensum OO programmering: Fremgangsmåte (mer detaljert i How-to.. 9.1) 1. Finn ut hvilke klasser vi trenger og hvordan de skal henge sammen; her er UML-diagram nyttig. Husk: En klasse skal representere noe spesifikt, enten et konsept eller en fysisk gjenstand. 2. Definer grensesnittet (dvs metodene) til klassen(e). 3. Finn representasjonen (dvs instansvariable) i klassen. 4. Programmer grensesnittmetoder og konstruktør for klassen 5. Lag og kjør et testprogram som tester klassen Siri Moe Jensen INF1001 - Høst 2016 uke 13 15 Siri Moe Jensen INF1001 - Høst 2016 uke 13 16 4

UML klassediagrammer Bruk: Planlegging av programmeringen + dokumentasjon Viser: Klassene og deres relasjoner til hverandre Omfatter: Klassenavn og relasjoner, ofte også: Grensesnitt (hvilke metoder kan kalles for et objekt av klassen) Representasjon (hvordan er data representert i klassen) Relasjonsangivelsen (navnet og antallet) gir et grunnlag for å definere mye av representasjonen. Pensum: lysark 23-31, uke 9 Hvordan organisere mengder av verdier? Plasserer verdiene i en samling (container ) Verdiene som organiseres kan være f. eks. heltall eller objekter Liste: Enkel å bruke, holder orden på en rekkefølge og kan manipuleres gjennom indekser, ved gjennomløp eller første/ siste element. Kapittel 6 Dictionary (=map, oppslag): Organiserer par av nøkkel og verdi, der hver nøkkel er unik og gir en verdi ved direkte oppslag. Ingen bestemt rekkefølge på elementene. Kapittel 8.2 Ikke pensum: Set: Kun unike verdier, ingen nummerering effektiv prosessering. Kapittel 8.1 Siri Moe Jensen INF1001 - Høst 2016 uke 13 17 Siri Moe Jensen INF1001 - Høst 2016 uke 13 18 Samlinger av samlinger (kap 8.3.2) innholdet i en samling kan selv være samlinger lister dictionaries kandidatlister "INF1001" Per Ole Kari Mette "INF1080" "Ex.phil." 0 1 2 3 Kari Pål Per Åse Solveig Anne Espen Per Pål etc Samlinger av samlinger Typisk stoff for "stor oppgave" på eksamen Nyttig å jobbe med flere eksempler Uke 12 (fra eksamen 2014) med løsningsforslag Uke 13 (eksamenssett 2015) gjennomgås seminartime Uke 14 (prøveeksamen) Tegn for å beholde oversikt, tenk "ett ledd av gangen" Siri Moe Jensen INF1001 - Høst 2016 uke 13 19 Siri Moe Jensen INF1001 - Høst 2016 uke 13 20 5

Digital representasjon 1. Tegnsett: Nyttig, men ikke viktig del av pensum Det finnes mange tegnsett; de mest brukte er ISO Latin-1 (= ISO 8859-1) og Unicode; den siste kodes gjerne som UTF-8. 2. Tall/ tallsystemer Dere bør kunne konvertere små tall mellom desimalt, binært og heksadesimalt 3. Digital koding av lyd og bilder er ikke pensum i INF1000 Se ressurssiden for uke 11: Dags lysark og screencast Notater med to ulike fremgansgmåter for konvertering av tall mellom tallsystemer (binært <-> desimalt <-> <-> heks) IT og samfunn, personvern Dette er viktig i pensum - se lysark uke 8, 1.time Berører Personopplysningsloven (Poppl) det jeg ønsker å gjøre? (se figur fra forelesning) Definisjoner, krav og unntak se Poppl (lovteksten gjøres digitalt tilgjengelig på eksamen) Se også boken Digitale medier (Gisle M fl). Dette er almenkunnskap som dere vil ha mye glede av utover i studiet og ellers. Siri Moe Jensen INF1001 - Høst 2016 uke 13 21 Siri Moe Jensen INF1001 - Høst 2016 uke 13 22 Hva vil det si å kunne programmere? Mer spesifikt: Hva er det dere forventes å kunne etter INF1000? Eller sagt på annen måte: Hva er det dere må kunne for å gjøre det godt på eksamen? Programmering er en ferdighet! Målet er å kunne anvende programmering til å løse problemer Å forstå de ulike begrepene (som if og while) er en forutsetning, men ikke tilstrekkelig Å lese boka er ikke nok - man må også trene på å løse mange ulike problemer Alle skriftlige læremidler kan tas med på eksamen - ferdigheten må man ha opparbeidet selv Siri Moe Jensen INF1001 - Høst 2016 uke 13 23 Siri Moe Jensen INF1001 - Høst 2016 uke 13 24 6

Programmeringens natur Fra første time: Software development happens in your head, not in an editor" (Andy Hunt) "Programming is all about problem solving. It requires creativity, ingenuity, and invention" Programmering er både inspirerende og frusterende ".. combining rich, flexible human thought with the rigid constraints of a digital computer exposes the power and the deepest flaws of both" Styrke Svakhet Menneske Kreativitet og intuisjon Manglende nøyaktighet og husk Siri Moe Jensen INF1001 - Høst 2016 uke 13 25 Presisjon og Ingen forståelse av Datamaskin kompleksitet formål/intensjon Siri Moe Jensen INF1001 - Høst 2016 uke 13 26 Eksempel på oppgave (lett omskrevet fra eksamen INF1000, høst 2013) Du skal na skrive en funksjon som har tre parametre som tar imot flyttalls-verdier. Funksjonen skal finne den minste av de tre parameterverdiene og returnere denne. Hvis metoden heter minst, sa skal f.eks. programsetningen v = minst(3, 1.3, 2.6) føre til at variabelen v blir tilordnet verdien 1.3. Prøv selv å skrive et komplett svar på denne (5 min)! def minst(a, b, c): svar=a if b < svar: svar = b if c < svar: svar = c return svar Et mulig svar Siri Moe Jensen INF1001 - Høst 2016 uke 13 27 Siri Moe Jensen INF1001 - Høst 2016 uke 13 28 7

def minst(a, b, c): svar=a if a <= b and a <= c: svar = a if b <= a and b <= c: svar = b if c <= a and c <= b: svar = c Et annet mulig svar def minst(a, b, c): svar=a if a <= b and a <= c: svar = a elif b <= c: svar = b else: svar = c return svar Et tredje mulig svar Siri Moe Jensen INF1001 - Høst 2016 uke 13 29 return svar Siri Moe Jensen INF1001 - Høst 2016 uke 13 30 En noe vanskeligere oppgave Vi har gitt en fil med navn "bokstaver.txt", som har én bokstav per linje. Skriv et program som leser gjennom denne filen og a) teller antall A-er i filen b) regner ut andelen av bokstavene i filen som er A (antall A dividert med antall bokstaver totalt). Prøv å skrive ned koden for dette på papir (5 minutt) antalla = 0 antallbokstaver=0 filnavn = "bokstaver.txt" for line in open(filnavn): bokstav = line.strip() antallbokstaver +=1 if (bokstav == "a"): antalla += 1 Et mulig svar print( "Antall A: ", antalla ) print( "Andel A: ", 1.0*antallA/antallBokstaver) Siri Moe Jensen INF1001 - Høst 2016 uke 13 31 Siri Moe Jensen INF1001 - Høst 2016 uke 13 32 8

Hva som krevdes for å løse oppgaven Se behovet for en løkke (while) for å lese bokstaver Kunne lese fra fil Se behovet for å sjekke hva en bokstav er (if) Se behovet for en A-teller som begynner på 0 Oppg b: se at man trenger en ekstra teller for alle bokstaver (Man kunne også løst ved å lese inn i en liste. Det ville vært mer arbeid, men ville også løst problemet.) INF1000 Eksamensforberedelser og -tips Høst 2016 Siri Moe Jensen Siri Moe Jensen INF1001 - Høst 2016 uke 13 33 Siri Moe Jensen INF1001 - Høst 2016 uke 13 34 Før eksamen I Trening i større programmer med komplekse strukturer, overblikk/ helhet: Eksamensoppgaver (ressurssider, seminartimer uke 12+13) Oblig 7 (kan den forbedres?) Enkeltdeler av pensum Forelesninger, slå opp/ utdyp fra lærebok Løs oppgaver fra Trix og evt lærebok Uløste obligoppg? Nyttige tilbakemeldinger på leverte? Prøveeksamen! Før eksamen II Gjennomfør prøveksamen! Planlegg hjelpemidler Sett av 4 timer om mulig Lag en realistisk eksamenssituasjon! Revurder evt hjelpemidler til eksamen Les eksamensreglementet, sjekk grundig hvor/ når du skal møte (kurssidene og studentweb), beregn god tid Følg med på beskjeder på semestersidene, og les eller videresend UiO-mail Siri Moe Jensen INF1001 - Høst 2016 uke 13 35 Siri Moe Jensen INF1001 - Høst 2016 uke 13 36 9

Prøveeksamen 21. november Oppmøte fra kl 12:00, start 12:15 Gruppe 1: Chill Gruppe 2: Sed 12:15 16:00 gjennomføres prøveeksamen mest mulig likt som eksamen for å gi erfaring med eksamensformen og programvaren. Det blir mulig å jobbe videre på en kopi av besvarelsen etter at selve prøveeksamen avsluttes. En løsning gjennomgås på seminartimen 24.11 Om besvarelsene fra prøveeksamen Foreleserne vil ha tilgang til disse De er (selvsagt!) anonyme akkurat som eksamensbesvarelsene Hensikten er å få mer erfaring med digitale oppgaver før eksamen f eks om automatisk retting fungerer ok Vi har ingen ønsker om å vurdere deg ut fra prøveeksamen! Den og andre forberedelser vil gi nyttig læring mot eksamen.. så ikke mist motet om ikke alt går like lett allerede her! Siri Moe Jensen INF1001 - Høst 2016 uke 13 37 Siri Moe Jensen INF1001 - Høst 2016 uke 13 38 På eksamen Hensikten er å vise sensorene hvilke deler av pensum du behersker Du kan gå frem og tilbake i besvarelsen og endre svar så mange ganger du vil inntil levering Foreleser(e) vil gå rundt etter ca 0.5-1.5 time, forbered spørsmål om uklarheter Koden som skrives vurderes av sensorer = mennesker. Skal ikke kompileres eller kjøres av maskiner. Les oppgaven grundig! Hva ber den (ikke) om? 1. De aller fleste får liten tid Hovedprinsipp: Ikke kladd. Men tegn/ skisser gjerne ved siden av. Oppgavesettet gir totalt maksimalt 100 poeng. Vurder tidsbruk på enkeltoppgaver opp mot antall poeng de gir Svar på det det spørres om kort og presist. Ikke gjenta oppgaven. Vi krever ikke kommentarer på eksamen. Kan brukes om du ønsker å klargjøre noe (men husk at sensor kjenner oppgaven ganske godt) Siri Moe Jensen INF1001 - Høst 2016 uke 13 39 Siri Moe Jensen INF1001 - Høst 2016 uke 13 40 10

2. Sensor vil deg vel! Hensikten er å se hva du behersker av læringsmålene ikke å pirke på språk eller skrivefeil Vi leter etter hva du kan men du må vise oss det (og det må svare på det oppgaven spør om) Har du ikke tid til å programmere i detalj kan pseudokode/ kort beskrivelse være bedre enn ingenting men den må vise noen relevante tanker om hvordan du ville gått frem. (dvs mer enn å gjenta oppgaven ) Lykke til!! (og bruk Piazza, mail og gruppetimer om det dukker opp spørsmål fremover!) Siri Moe Jensen INF1001 - Høst 2016 uke 13 41 11