Rapport fra prosjekt for evaluering av seminarundervisning i IN1000

Størrelse: px
Begynne med side:

Download "Rapport fra prosjekt for evaluering av seminarundervisning i IN1000"

Transkript

1 Rapport fra prosjekt for evaluering av seminarundervisning i IN1000 Innhold 1. Bakgrunn (s. 1) a. Motivasjon b. Om seminaropplegg 2. Gjennomført arbeid (s. 3) a. Intervjuer med gruppelærere 3. Diskusjon (s. 4) a. Resultat av intervjuer b. Konklusjon c. Fremtidig arbeid 4. Vedlegg (s. 7) a. Fullstendig seminaropplegg uke 4 b. Utdelingsoppgaver uke 4 Bakgrunn Motivasjon De siste årene har IFI brukt egne midler og studiekvalitetsmidler på utvikling av øvingsoppgaver, obligatoriske oppgaver og seminartimeopplegg for INF1000 og INF1010. Sommeren 2017 ble ressurser og erfaringer overført til det nye introduksjonsemnet i programmering, IN1000, som overtok etter INF1000 etter omleggingene av studieprogrammene på MN. I seminaroppleggene som har vært utviklet de siste årene har det vært fokusert på å aktivisere studentene i undervisningen, og evaluering, vurdering og videreutvikling av dette arbeidet har vært en sentral del av dette prosjektet. Det meste av utviklingen av opplegg har blitt gjennomført av timelønnede assistenter, med veiledning fra faglærer, og vi ønsket en vurdering av opplegget i seg selv og ikke minst hvordan det fungerer i praksis, både for gruppelærere og med tanke på studentenes læringsutbytte. Målet med prosjektet har vært å evaluere opplegget for seminartimene i IN1000. Denne rapporten oppsummerer erfaringer, forbedringsforslag og resultater på en form som letter gjenbruk og implementering i andre emner på IFI.

2 Seminaropplegg Seminaroppleggene består av to deler; en mal til gjennomføringen av seminartimen og et oppgavesett beregnet på arbeid i små grupper med penn og papir. I dette prosjektet ser vi i hovedsak på mal til gjennomføring. Oppleggene er utformet med en intensjon om å bryte opp den tradisjonelle forelesningsstilen som har tidligere har preget seminarundervisningen i INF1000. I steden for at gruppelærer blir en foreleser som kun står foran og liveprogrammerer og løser oppgaver i plenum, legges det opp til at studentene aktivt skal delta i undervisningssituasjonen. Dette gjøres gjennom forslag til muntlige aktiviteter, leker og gruppearbeid (et eksempel på dette vises i figur 1). Typisk legges det opp til at gruppelærer først gjennomgår noe, deretter løses oppgaver, før neste tema gjennomgås og oppgaver løses. Intensjonen med å dele opp undervisningen på denne måten er å hyppig bryte opp plenumsundervisningen med oppgaveløsning, og dermed gjøre undervisningssituasjonen mer aktiv. Et eksempel på et fullstendig opplegg slik det ligger ute for gruppelærere finnes i appendix 1. Et eksempel på oppgavesett til utdeling til studentene finnes i appendix 2.

3 Gjennomført arbeid Arbeidet startet opp i uke 42 med halvdags planleggingsmøte. På møtet ble undervisningsopplegg og deres struktur gjennomgått. Før neste møte, i uke 44, ble avholdt, ble data fra fjorårets kurskritikk innhentet. Denne viste seg å inneholde lite formativ tilbakemelding på seminarundervisningen, og var ikke i særlig grad relevant for prosjektet. På møtet i uke 44 ble det planlagt gjennomføring av intervjuer med gruppelærere og studenter, og spørsmål til et semistrukturert intervju ble utarbeidet. Intervjuer med fem gruppelærere ble gjennomført i forbindelse med evalueringsmøtet for kurset etter siste uke med gruppetimer. Intervjuene ble tatt opp og transkribert. Mellom uke 42 og uke 44 ble også gjennomføring av seminartimer observert i flere grupper. - Halvdagsmøter og planlegging - Gjennomgang av data fra kurskritikken - Intervjuer med gruppelærere og studenter - Gjennomgang av opplegg og oppgaver (?) Intervjuer med gruppelærere Fem gruppelærere ble intervjuet individuelt i forbindelse med et seminar for evaluering av semesteret i november. Av gruppelærerne hadde tre tidligere erfaring som gruppelærer i emnet INF1000 (som høsten 2017 ble erstattet av IN1000), mens to ikke hadde tidligere erfaring som gruppelærer. Intervjuene var todelte første del handlet om hvorvidt og i hvor stor grad oppleggene ble fulgt av gruppelærer, og hva som eventuelt ble gjort i steden. Den andre delen handlet om good practice, positive erfaringer fra bruk av oppleggene med spesielt hensyn til aktivisering av studentene, og eventuelle ønsker om endringer på oppleggene. Der det var naturlig ble det stilt oppfølgingsspørsmål. De konkrete spørsmål som ble stilt var: 1. Informasjon om opptak og anonymisering, innhenting av samtykke 2. Blir det gjort? a. Ble oppleggene brukt av deg, og i så fall i hvor stor grad? b. Hva ble eventuelt gjort i steden? c. Har opplegg hatt effekt med tanke på aktivisering av studentene? d. Har du et inntrykk av at studentene liker oppleggene?

4 e. Hvordan er det faglige nivået på oppleggene? f. Er det noe du føler mangler, eller noe du ønsker det skulle vært mer av i oppleggene? 3. Good practice a. Gi ett eksempel på en positiv erfaring; når var studentene med mest? Intervjuene ble tatt opp på bånd og transkribert etter samtykke fra deltakerne. Opptak ble umiddelbart slettet etter transkripsjon, mens transkripsjonene ble anonymisert og oppbevares. Diskusjon Intervjuer Gjennom intervjuer med gruppelærere kom det frem at både mer og mindre erfarne gruppelærere mener de alltid eller i stor grad har brukt oppleggene i sine seminartimer. Gruppelærerne med flere semesters erfaring fra tidligere har i noen grad gjort endringer og tilpasninger i oppleggene der de har ønsket det. Av endringer som har vært gjort nevnes ved flere anledninger: - Omrokkering av stoff - Enkelte gruppelærere har flyttet all teorien først, og alle aktiviteter og oppgaveløsning sist, for å skape mer flyt i undervisningen - Mer liveprogrammering av eksempler - Der det er lagt opp til at stoff skal gjennomgås på tavlen, har gruppelærer heller brukt egnede oppgaver som har vært gjennomgått i form av liveprogrammering foran klassen. - Kahoot - En gruppelærer har lagt inn egenutviklede Kahoot-quizer underveis i opplegget for å aktivisere studentene. Gruppelærerne mener aktivitetene som har vært foreslått i oppleggene i stor grad har bidratt til å aktivisere studentene i undervisningssituasjonen. Av aktiviteter som spesielt trekkes frem, er lekene, liveprogrammering med interaksjon mellom underviser og studenter, og quiz med ukens pensum. Enkelte mener lekene skaper en del unødvendig overhead, slik at mye tid går bort til organisering, og foreslår at det bør gjøres enklere og mindre omfattende enn det er lagt opp til. Det nevnes også at oppleggene er med på å bryte barrieren mellom underviser og student, og at den tradisjonelle undervisningssituasjonen med én foreleser og en forsamling som lytter tas ut av seminarundervisningen. Én gruppelærer sier:

5 Det beste som jeg har funnet ut av er på en måte å være en del av dem mer enn å stå og være lærer. Det er det som gjør dem mest aktive som en gruppe. Med tanke på pensum, mener samtlige at det faglige nivået det legges opp til i oppleggene er passe for de fleste studentene. I enkelte situasjoner har det som skulle gjennomgås vært for enkelt for noen grupper, og da mener gruppelærerne det er fint at oppleggene er lagt opp punktvis og såpass fritt at det er enkelt å bevege seg litt utover det som foreslås. Gruppelærerne ble under intervjuene spurt om det var noe de ønsket mer eller mindre av i oppleggene, eller om de hadde noen forslag til aktiviteter som burde tas inn som ikke er med. Enkelte uerfarne gruppelærere ønsker at det skal legges inn forslag til tidsbruk for hvert punkt i opplegget, slik at det er lett å forholde seg til hvilke temaer som bør vektlegges mer eller mindre. De mer erfarne gruppelærerne mener dette kan føre til at gruppelærer låser seg med tanke på tidsbruk, og at flyten i undervisningen blir dårligere. Det foreslås av én gruppelærer at den tradisjonelle liveprogrammeringen der gruppelærer programmerer foran klassen kan erstattes med at én student tas opp til tavlen, og at klassen dikterer hva som skal programmeres. Vedkommende har forsøkt dette selv i sine timer, og høstet gode erfaringer fra dette. Gruppelæreren sier: man kan bruke opplegget aktivt ved å få studentene til å f.eks. liveprogrammere eller gå opp på tavla i steden for lærer, så man ikke gjør alt i plenum. [...] Jeg pleier å ha med en liten premie, for eksempel en sjokolade, til den som kommer opp. [...] På slutten var det lett å få folk opp på tavla, men i begynnelsen er det ikke så lett. Vi har ikke foretatt formelle intervjuer med studenter, men ved flere anledninger snakket med studenter i forbindelse med observasjon av undervisningen. Det er vår oppfatning at både gruppelærere og studenter virker positive til seminaroppleggene, og at dette bør brukes og arbeides videre med. Konklusjon Gruppelærerne rapporterer om at de benytter seg av oppleggene som har vært utviklet i stor grad, og at de er tilfreds med oppleggene. Samtlige melder også om at studentene virker fornøyd med avviklingen av seminartimer i IN1000. Aktivisering av studentene i undervisningen har vært et fokusområde ved utarbeiding av oppleggene. Det er naturlig nok variasjon fra gruppe til gruppe hva som fungerer og ikke fungerer. Aktiviteter som gruppelærerne mener i størst grad har fått studentene til å delta i undervisningssituasjonen har vært leker, quiz, liveprogrammering med interaksjon og gruppearbeid med oppgaver. Av aktiviteter gruppelærerne ønsker seg mer av i timene, nevnes kortere småleker som ikke krever mye organisering, noe endret struktur slik at all teori kommer først og alle aktiviteter/oppgaver kommer etterpå, samt forslag til tidsbruk på hvert punkt til støtte for uerfarne gruppelærere.

6 Vi anbefaler på bakgrunn av dette at arbeidet med opplegg for seminartimer videreføres i IN1000, og at erfaringene vi har høstet i forbindelse med dette tas med inn i andre emner ved IFI som tilbyr seminartimer i undervisningen. Fremtidig arbeid Vi ønsker videre å intervjue studenter om deres opplevelse av seminartimene, både med tanke på aktivisering og læring. Gjennom uformelle samtaler med studenter som har fulgt gruppeundervisningen i IN1000 denne høsten er det vår oppfattelse at de i stor grad er positive til seminartimene, men vi har ikke mer strukturerte samtaler og data å vise til. I forbindelse med omleggingen av INF1010 til IN1010 denne våren, vil nye seminaropplegg utarbeides i januar Disse vil i stor grad basere seg på erfaringene med seminaropplegg fra IN1000, og det vil være interessant å se på hvilke erfaringer vi gjør oss, både fra arbeidet med forberedelse av opplegg, og med gjennomføringen av seminartimene.

7 Vedlegg A - Opplegg uke 4 IN Opplegg seminartimer uke 4 Stikkord: While-løkker, for-løkker med teller, for-løkker på lister. Opplegg Sende rundt navneark Fortsette fra forrige gang (hvis man ikke ble ferdig med alt, ikke så mye å gå gjennom denne gangen). Ta spørsmål. Hva har de problemer med? Gjør evt. Punkt under og kom tilbake hit hvis de ikke stiller spørsmål. Forsøk å få til en dialog med studentene. Kan bruke pythontutor for å vise studentene løkker! Gjennomgang: While-løkke En løkke inneholder en kodeblokk som man ønsker at skal gjentas en rekke ganger. For eksempel, ønsker man å skrive ut alle tall fra 0 til 5. Kan løses ved å skrive print(1), print(2), osv MEN; hva hvis man vil skrive ut alle tall fra 0 til X, hvor X er ukjent og/eller kan forandre seg. Da kan det være fint med en løkke: Syntaks: while <uttrykk er sant> : <gjør dette> Vis kodeeksempel, skriv opp på tavle og vis tydelig hvordan variabelen i endrer seg og uttrykket i < x evalueres hver runde, kan eventuelt illustreres i pythontutor ( ): x = 5 # kan også endre slik at x er input fra bruker i = 0 # i er telleren vår, veldig vanlig å bruke variabelnavnet i for teller i løkker. while i < x : # kan leses som så lenge i er mindre enn 5 print(i) # skriver ut telleren vår i = i + 1 # deretter øker vi variabelen i med 1 # kan alternativt skrives som i += 1

8 # så gjentas løkken - Fortell at i en while-løkke må det boolske uttrykket være modifiserbart, dvs. at det bli evaluert til false på et eller annet tidspunkt, ellers så vil vi havne i en evig løkke. - Nyttig bruk for while-løkke er for eksempel en kommandoløkke, der man ikke avslutter før brukeren taster inn en spesifikk kommando. Oppgave 1 - gi studentene tid til å løse oppgave 1. Løs deretter felles på tavle (la studentene skrive/si svaret). Oppgave 1 x = 3 while x < 10: x += Tegn gjerne opp hvordan ting skjer, eventuelt bruk pythontutor. print(x) Oppgave 2 - gi studentene tid til å løse oppgave 2. Løs deretter felles på tavle (la studentene skrive/si svaret). Oppgave 2 Skriv et program med en variabel a med verdien 1 og en while-løkke. For hver runde i while-løkken skal variabelen a ganges med 2. Løkken skal være ferdig når verdien av a er større enn 100. Skriv så ut verdien av a. Hvilken verdi blir skrevet ut? 101 Siste gang løkken gjennomføres er a = 99, inni løkken økes a med 2 (får verdi 101), så sjekkes det igjen om a < 100, det evalueres til False (siden a er 101). Dermed er løkken ferdig, og a skrives ut. Løkker er fine å bruke på lister også! Oppgave 3 - gi studentene tid til å forsøke å løse oppgave 3. Løs deretter felles på tavle (la studentene skrive/si svaret). Repeter gjerne hvordan indeksering i lister fungerer igjen! Oppgave 3 Hva tror du skrives ut på skjermen av programmet under? Diskuter med gruppen. tekst = ["hadet", "på", "badet", "din", "gamle", "sjokolade"] indeks = 0 > hadet > badet > gamle NB! Indekseringen øker med 2 for hver runde.

9 while indeks < len(tekst): print(tekst[indeks]) indeks += 2 For-løkker for i in range(tall) # hvor hver i fra 0 til tall. Feks. for i in range(4) # vil gå fra 0 til 4 (NB! Ikke til og med), mao 0 tom. 3. for i in range(start, slutt) # i vil ha startverdi start og slutte på slutt. Feks for i in range(2, 5) # i vil starte som 2 og gå til 5/tom. 4. for i in range (start, slutt, oekning) # i vil ha startverdi start, slutte på slutt og øke med oekning. Feks. for i in range(2, 15, 3) # i vil starte som 2, øke med 3 for hver runde helt frem til i er større enn 15 (eller lik 15), da slutter den. Dvs: 2, 5, 8, 12, 15 > løkken kjøres ikke mer. Variablen i trenger ikke å være definert på forhånd. Forklare forskjellen for og while - når bruker man hva? - For brukes gjerne når man vet hvor mange ganger noe skal skjer. - While kan gjerne brukes når man ikke vet hvor mange ganger noe skal skje, men feks. Hvis man vil lagre et ukjent antall verdier en bruker taster helt til brukeren taster 0, da er det fordelaktig å bruke while. Ofte kan man allikevel velge hva man ønsker. Oppgave 4 - gi studentene tid til å forsøke å løse oppgave 4. Løs deretter felles på tavle (la studentene skrive/si svaret). Oppgave 4 Skriv et program med en prosedyre printhei, prosedyren skal skrive ut teksten Hei til skjermen. Definer en variabel a med en verdi 5 og lag en while-løkke, løkken skal kalle prosedyren printhei. Bruk variabelen a slik at løkken er ferdig etter du har kalt print_hei 5 ganger. Skriv prosedyren printhei. Deretter løs oppgaven både ved hjelp av while-løkke og for-løkke. def printhei() : print("hei") i = 0 a = 5 while i < a : printhei() i += 1 for i in range(a) : printhei()

10 Oppgave 5 - gi studentene tid til å forsøke å løse oppgave 5. Løs deretter felles på tavle (la studentene skrive/si svaret). Oppgave 5 Skriv et program som inneholder en while-løkke. Inne i løkken skal bruker bes om å taste et tall. Dersom tallet ikke er 10, skal løkken fortsette å be om tall. Når bruker taster inn tallet 10, skal brukeren få beskjeden Du har tastet inn tallet 10. Programmet avsluttes før programmet så avslutter. tall = 0 sum = 0 while tall!= 10 : sum += tall tekst = input("skriv tall ") tall = float(tekst) print("sum er: ", sum) Utfordring: summer sammen alle tallene brukeren skriver inn frem til 10 blir tastet. Når 10 tastes inn skrives summen ut. Dvs. hvis bruker taster sekvensen , skrives det ut Sum er: 8 før programmet avsluttes. Oppgave 6 - gi studentene tid til å forsøke å løse oppgave 6. Løs deretter felles på tavle. Skriv opp verdiene til a og b for hver iterasjon, få gjerne en student til å gjøre dette. Oppgave 6 Hva skrives ut på skjermen av programmer under? Her kan det være nyttig å skrive ned verdiene av a og b for hver iterasjon av løkken. a = -4 b = 8 a = 10 b = 1 while a > 0: b = b * 2 a = a - b print("a =", a) print("b =", b) For-løkker for lister / for-each Syntaks: for <element> in <liste> : # for hvert element i listen liste

11 Eks: div = [ "kamera", "lommebok", "pass", "mobillader" ] for ting in div : print( "Pakket med: ", ting) For mengder/set gjelder akkurat det samme, men her kan rekkefølgen på ting variere (i lister vil de alltid komme i den rekkefølgen de står i/basert på index). Oppgave 6 - gi studentene tid til å forsøke å løse oppgave 6. Løs deretter felles på tavle. Poenget her er at de skal bruke denne typen for-løkke og ikke Oppgave 7 Gitt mengden (!NB ikke liste) : tall_rekke = {3, 6, 8, 1} Legg sammen alle tallene i mengden og skriv ut summen. tall_rekke = {3, 6, 8, 1} for tall in tall_rekke : sum += tall print(sum) Prosedyrer med parametre Repetisjon prosedyrer fra uke 2. def metode_navn (): <ting skjer> Forklare forskjellen på prosedyrer, metoder og funksjoner (slik vi bruker begrepene i dette faget): Funksjon Prosedyre Metode En funksjon som defineres med def, som ikke er del av en klasse (ordet self brukes ikke). Funksjoner har alltid en returverdi. Eks: def sum(a, b): c = a + b return c På engelsk kalles dette function. Tilsvarende funksjon, men uten returverdi. Bruker aldri ordet self, og er ikke del av en klasse. Eks: def superprint(ord): print( ordet er, ord) På engelsk kalles dette procedure. Tilsvarende funksjon, men som del av en klasse. Har alltid self som første parameter. Kan, men må ikke, ha en returverdi. Eks:

12 def areal(self): firkant_areal = self.lengde * self.bredde return firkant_areal På engelsk kalles dette method. Frem til vi lærer mer om objekter trenger de kun å fokusere på funksjoner og prosedyrer. Skriv gjerne opp forskjellen på tavlen. Med parametere: Til prosedyrer/funksjoner kan man også sende med parametre, som er en type variabler. Variablene man sender med blir de som er med som argument i prosedyren. Syntaks: def prosedyre_navn(parameter1, parameter2, ) # kan ha så mange parametere man vil <gjøre ting> Feks. def summer(a, b): print( sum:, a + b) Man kaller på prosedyren slik: summer(5, 6) Inni prosedyren summer vil a her ha verdien 5 og b ha verdien 6. Man kan ogs sende med variabler når man kaller på en prosedyre: Feks. z = 7 y = 3.5 summer(z, y) (utskrift blir: sum: 10.5 ) Her vil a få verdien 7 og b får verdien 3.5. NB! Når prosedyren summer er ferdig så vil ikke a og b beholde verdiene sine. Repetere igjen; Fordel med prosedyrer -> kan gjenbruke kode! Kan kalle på en prosedyre flere ganger

13 Tegn opp disse kallene, forklar hvordan a og b får sine verdier. Parametrene som sendes med kan være hvilke som helst verdier. Oppgave 7 - gi studentene tid til å forsøke å løse oppgave 1. Løs deretter felles på tavle (la studentene skrive/si svaret). Oppgave 7 Skriv en funksjon storst_av_to som tar imot to tall som parametre og skriver ut verdien til det største tallet. def storst_av_to(tall1, tall2) : if tall1 > tall2 : print( Storst:, tall1) else : print( Storst:, tall2) O ppgave 8 - gi studentene tid til å forsøke å løse oppgave 2. Løs deretter felles på tavle (la studentene skrive/si svaret). Oppgave 8 def skriv_historie(forst, andre, tredje) : print(forst, dro paa ferie med, tredje, de ville dra uten, andre, men, andre, snek seg med i bagasjerommet.. ) navn1 = Silje navn2 = Ole navn3 = Jakob navneliste = [ Emilie, Haakon, Yulai ] skriv_historie( Kari, Per, Martin ) skriv_historie(navneliste[0], navn3, navn1] skriv_historie(navn2 + navn3, navneliste[1], navneliste[2]) >Kari dro paa ferie med Martin de ville dra uten Per, men Per snek seg med i bagasjerommet.. >Emilie dro paa ferie med Silje de ville dra uten Jakob, men Jakob snek seg med i bagasjerommet.. >Ole Jakob dro paa ferie med Yulai de ville dra uten Haakon, men Haakon snek seg med i bagasjerommet. Neste uke: Sundvollen!

14 Hvis tid, spør om noe er uklart og eventuelt repeter tidligere pensum: Repetisjon av pensum hittil, gå igjennom: print Variabler Typer assert Input og konvertering av typer Forståelse av feilmeldinger Prosedyrer Lister, spesielt eksempler med lister og løkker While-løkker Dictionary/ordbok

15 Vedlegg B - Oppgaver uke 4 INF Seminaroppgaver til uke 4 Oppgave 1 Hva skrives ut her? Diskuter med gruppen. x = 3 while x < 10 : x += 1 print(x) Oppgave 2 Skriv et program med en variabel a med verdien 1 og en while-løkke. For hver runde i while-løkken skal variabelen a ganges med 2. Løkken skal være ferdig når verdien av a er større enn 100. Skriv så ut verdien av a. Hvilken verdi blir skrevet ut? : Oppgave 3 Hva tror du skrives ut på skjermen av programmet under? Diskuter med gruppen. tekst = [ "hadet", "på", "badet", "din", "gamle", "sjokolade" ] indeks = 0 while indeks < len(tekst): print(tekst[indeks]) indeks += 2 :

16 Oppgave 4 Skriv et program med en prosedyre print_hei, prosedyren skal skrive ut teksten Hei til skjermen. Definer en variabel a med en verdi 5 og lag en while-løkke, løkken skal kalle prosedyren print_hei. Bruk variabelen a slik at løkken er ferdig etter du har kalt print_hei 5 ganger. Løs oppgaven både ved hjelp av while-løkke og for-løkke: print_hei: while-løkke: for-løkke:

17 Oppgave 5 Skriv et program som inneholder en while-løkke. Inne i løkken skal bruker bes om å taste et tall. Dersom tallet ikke er 10, skal løkken fortsette å be om tall. Når bruker taster inn tallet 10, skal brukeren få beskjeden Du har tastet inn tallet 10. Programmet avsluttes før programmet så avslutter. Utfordring: summer sammen alle tallene brukeren skriver inn frem til 10 blir tastet. Når 10 tastes inn skrives summen ut. Dvs. hvis bruker taster sekvensen , skrives det ut Sum er: 8 før programmet avsluttes. : Oppgave 6 Hva skrives ut på skjermen av programmer under? Her kan det være nyttig å skrive ned verdiene av a og b for hver iterasjon av løkken. a = 10 b = 1 while a > 0 : b = b * 2 a = a - b print( "a =", a) print( "b =", b) :

18 Oppgave 7 Gitt mengden (!NB ikke liste) : tall_rekke = { 3, 6, 8, 1 } Legg sammen alle tallene i mengden og skriv ut summen. : Oppgave 8 Skriv en prosedyre storst_av_to som tar imot to tall som parametre og skriver ut verdien til det største tallet.

19 Oppgave 9 Hva skrives ut her? def skriv_historie (forst, andre, tredje) : print(forst, dro paa ferie med, tredje, de ville dra uten, andre, men, andre, snek seg med i bagasjerommet.. ) navn1 = Silje navn2 = Ole navn3 = Jakob navneliste = [ Emilie, Haakon, Yulai ] skriv_historie( Kari, Per, Martin ) skriv_historie(navneliste[ 0 ], navn3, navn1] skriv_historie(navn2 + navn3, navneliste[ 1 ], navneliste[ 2 ]) <<<<<

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å.

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å. Repetisjon Skrevet av: Ole Kristian Pedersen, Kodeklubben Trondheim Kurs: Python Tema: Tekstbasert Fag: Programmering Klassetrinn: 8.-10. klasse Introduksjon I denne oppgaven skal vi repetere litt Python-syntaks,

Detaljer

Repetisjon Novice Videregående Python PDF

Repetisjon Novice Videregående Python PDF Repetisjon Novice Videregående Python PDF Introduksjon I denne oppgaven skal vi repetere litt Python-syntaks. Hele dette kurset er for de som har programmert Python før. Dersom ikke har mye erfaring med

Detaljer

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

Finne ut om en løsning er helt riktig og korrigere ved behov Finne ut om en løsning er helt riktig og korrigere ved behov Finurlige feil og debugging av kode IN1000, uke5 Geir Kjetil Sandve Oppgave (Lett modifisert fra eksamen 2014) Skriv en funksjon Dersom parameteren

Detaljer

Løse reelle problemer

Løse reelle problemer Løse reelle problemer Litt mer om løkker, prosedyrer, funksjoner, tekst og innlesing fra fil INF1000, uke4 Geir Kjetil Sandve 1 Tilbakeblikk Dere bør nå beherske det sentrale fra uke 1 og 2: Uttrykk, typer,

Detaljer

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

Objektorientert programmering i Python. Resten av semesteret. Innhold uke 9 Mer komplekse strukturer. Referanser og objekter, inkl Mentimeter spørsmål Innhold uke 9 Mer komplekse strukturer Objektorientert programmering i Python IN1000 Høst 2018 uke 9 Siri Moe Jensen Referanser versus objekter (repetisjon) "Dot-notasjon" Spesielle metoder i egendefinerte

Detaljer

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

Finne ut om en løsning er helt riktig og korrigere ved behov Finne ut om en løsning er helt riktig og korrigere ved behov Finurlige feil og debugging av kode IN1000, uke5 Henrik H. Løvold Oppgave (Lett modifisert fra eksamen 2014) Skriv en funksjon Dersom parameteren

Detaljer

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

Innhold uke 8. Objekter: Bruk og intern organisering. Beskjeder: Oblig 1 6. Beskjeder: Oblig 7 (og 8) Innhold uke 8 Objekter: Bruk og intern organisering IN1000 Høst 2017 uke 8 Siri Moe Jensen Repetisjon fra forrige uke Definere en klasse, opprette og arbeide med objekter: How to Forstå (mer av) hva som

Detaljer

Hvordan løse problemer med programmering?

Hvordan løse problemer med programmering? Start screencast!! (tidlig..) Ha klar glass med linser Lukk programmer, untatt Atom, Keynote, Terminal Hvordan løse problemer med programmering? Problemløsning, løkker, og funksjoner med parametre IN1000,

Detaljer

Pilotprosjekt MAT1100 høst Skrevet av Inger Christin Borge og Jan Aleksander Olsen Bakke, vår 2017.

Pilotprosjekt MAT1100 høst Skrevet av Inger Christin Borge og Jan Aleksander Olsen Bakke, vår 2017. Pilotprosjekt MAT1100 høst 2016 - Skrevet av Inger Christin Borge og Jan Aleksander Olsen Bakke, vår 2017. Høstsemesteret 2016 gjennomførte Matematisk institutt (MI) ved UiO, som en del av et pilotprosjekt

Detaljer

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

Python: Løkker. TDT4110 IT Grunnkurs Professor Guttorm Sindre Python: Løkker TDT4110 IT Grunnkurs Professor Guttorm Sindre Denne uka Vi trenger å Støttes av Hente data fra bruker Vise data til bruker Lagre data i minnet for bruk videre i programmet Fra tastatur:

Detaljer

Velkommen til. IN1010 Objektorientert programmering Våren 2018

Velkommen til. IN1010 Objektorientert programmering Våren 2018 Velkommen til IN1010 Objektorientert programmering Våren 2018 Idag: 1. time: Om IN1010 2. time (+ i morgen og neste uke): Om Java og objekter i Java 1 Stein Gjessing, Siri Jensen og Dag Langmyhr Universitetet

Detaljer

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

Uke 8 Eksamenseksempler + Ilan Villanger om studiestrategier. 11. okt Siri Moe Jensen Inst. for informatikk, UiO Uke 8 Eksamenseksempler + Ilan Villanger om studiestrategier 11. okt. 2011 Siri Moe Jensen Inst. for informatikk, UiO 1 Innhold Eksamen INF1000 Høst 2011: Oppgave 4-7 Tekstmanipulering Metoder med og uten

Detaljer

Hvor gammel er du? Hvor gammel er du? Del 1: Skrive ut til skjerm. Gjøre selv. Skrevet av: Sindre O. Rasmussen, Kodeklubben Trondheim

Hvor gammel er du? Hvor gammel er du? Del 1: Skrive ut til skjerm. Gjøre selv. Skrevet av: Sindre O. Rasmussen, Kodeklubben Trondheim Hvor gammel er du? Skrevet av: Sindre O. Rasmussen, Kodeklubben Trondheim Kurs: Python Tema: Tekstbasert Fag: Programmering Klassetrinn: 5.-7. klasse, 8.-10. klasse Hvor gammel er du? I dette oppgavesettet

Detaljer

Øvingsforelesning 5 Python (TDT4110)

Øvingsforelesning 5 Python (TDT4110) Øvingsforelesning 5 Python (TDT4110) Repetisjon av løkker og funksjoner Ole-Magnus Pedersen Oversikt Praktisk Info Gjennomgang av Øving 3 Repetisjon 2 Praktisk info Prosjekter i PyCharm må startes med

Detaljer

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

Python: Løkker. TDT4110 IT Grunnkurs Professor Guttorm Sindre Python: Løkker TDT4110 IT Grunnkurs Professor Guttorm Sindre Læringsmål og pensum Mål Forstå hvorfor vi trenger løkker i programmering Ha kjennskap to ulike typer løkker (while-løkke, for-løkke) Og vite

Detaljer

Øvingsforelesning 5 Python (TDT4110)

Øvingsforelesning 5 Python (TDT4110) Øvingsforelesning 5 Python (TDT4110) Repetisjon av løkker og funksjoner Ole-Magnus Pedersen Oversikt Praktisk Info Gjennomgang av Øving 3 Repetisjon 2 Praktisk info Prosjekter i PyCharm må startes med

Detaljer

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

Python: Intro til funksjoner. TDT4110 IT Grunnkurs Professor Guttorm Sindre Python: Intro til funksjoner TDT4110 IT Grunnkurs Professor Guttorm Sindre Snart referansegruppemøte Viktig mulighet for å gi tilbakemelding på emnet Pensumbøker Forelesninger Øvingsforelesninger Veiledning

Detaljer

INF Ekstrainnlevering

INF Ekstrainnlevering INF000 - Ekstrainnlevering Temaer på innleveringen: Hele pensum fram til nå. Oppgave E.) Tema: Beslutninger (if/else) Filnavn: Rekkefolge.java a) Lag et program som leser inn tre tall fra brukeren. b)

Detaljer

Oppgaver uke 1: Løsningsforslag

Oppgaver uke 1: Løsningsforslag Oppgaver uke 1: Løsningsforslag Oppgave 1 Hva tror du følgende program skriver ut til terminalen? Diskuter med gruppen. alder = 30 print("din alder er", alder) alder = 15 Din alder er 30 Når print() kalles

Detaljer

Oppgave 1 Hva tror du følgende program skriver ut til terminalen? Diskuter med gruppen.

Oppgave 1 Hva tror du følgende program skriver ut til terminalen? Diskuter med gruppen. IN1000 - Seminaroppgaver til uke 1 Nyttig å vite: PEP 8 -- Style Guide for Python Code. Dersom det som undervises i IN1000 ikke samstemmer med PEP, så skal dere følge den stilen som undervises og ikke

Detaljer

IN Seminaroppgaver til uke 11

IN Seminaroppgaver til uke 11 IN1000 - Seminaroppgaver til uke 11 Fortsettelse på Studentsystemet: Du har allerede laget Fag-objekter som holder oversikt over sine Studenter, og Student-objekter som holder oversikt over sine Fag. Nå

Detaljer

INF uke 2. Inputt, beslutninger, kontrollflyt og prosedyrer

INF uke 2. Inputt, beslutninger, kontrollflyt og prosedyrer INF1001 - uke 2 Inputt, beslutninger, kontrollflyt og prosedyrer Repetisjon fra forrige uke Lese inn fra tastaturet Beslutninger Kontrollflyt Prosedyrer Outline: Repetisjon fra forrige uke Lese inn fra

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

HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL

HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL Kandidatnr: Eksamensdato: 12. desember 2002 Varighet: Fagnummer: Fagnavn: Klasse(r): 3 timer LO116D Programmering i Visual Basic FU

Detaljer

Løkker og arrayer. Løse problemer med programmering. INF1000, uke3 Geir Kjetil Sandve

Løkker og arrayer. Løse problemer med programmering. INF1000, uke3 Geir Kjetil Sandve Løkker og arrayer Løse problemer med programmering INF1000, uke3 Geir Kjetil Sandve Hva vi har lært så langt Variabler og uttrykk Beslutninger Kontrollflyt og feilmeldinger Metoder og parametre Fokus i

Detaljer

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

Hvorfor objektorientert programmering? Objektorientert programmering i Python: Introduksjon. Læringsmål uke 7. Undervisning og pensum IN1000 Objektorientert programmering i Python: Introduksjon IN1000 Høst 2019 uke 7 Siri Moe Jensen Læringsmål uke 7 Kjenne til motivasjon og bakgrunn for objektorientert programmering Kunne definere en klasse,

Detaljer

IN1010 Objektorientert programmering Våren 2019

IN1010 Objektorientert programmering Våren 2019 IN1010 Objektorientert programmering IN1010 Objektorientert programmering Våren 2019 Stein Gjessing Hva skjer de første to ukene? Forelesninger de to første ukene i dag 1. time: Info om IN1010 i dag 2.

Detaljer

Hvorfor objektorientert programmering?

Hvorfor objektorientert programmering? Objektorientert programmering i Python: Introduksjon IN1000 Høst 2019 uke 7 Siri Moe Jensen Læringsmål uke 7 Kjenne til motivasjon og bakgrunn for objektorientert programmering Kunne definere en klasse,

Detaljer

INF101 (kun et utvalg av kommentarene er med i denne rapporten)

INF101 (kun et utvalg av kommentarene er med i denne rapporten) INF101 (kun et utvalg av kommentarene er med i denne rapporten) Respondenter Ny 0 0,0% Distribuert 59 71,1% Noen svar 0 0,0% Gjennomført 24 28,9% Frafalt 0 0,0% Prosent I alt 83 100,0% Er det første gang

Detaljer

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

Informasjon Eksamen i IN1000 og IN1001 høsten a) 1 poeng. 1b) 1 poeng. Tid. Oppgavene. Tillatte hjelpemidler. 30. november kl. 14. IN1000-INF1001-2018 Informasjon Eksamen i IN1000 og IN1001 høsten 2018 Tid 30. november kl. 14.30 (4 timer) Faglærere vil besøke lokalet ca kl 15-16. Oppgavene Oppgave 1a-f er kortsvarsoppgaver som rettes

Detaljer

Objektorientert programmering i Python

Objektorientert programmering i Python Objektorientert programmering i Python IN1000 Høst 2019 uke 8 Siri Moe Jensen Læringsmål uke 8 Repetisjon fra forrige uke Definere en klasse, opprette og arbeide med objekter: How-to

Detaljer

Informasjon Prøveeksamen i IN1000 høsten 2018

Informasjon Prøveeksamen i IN1000 høsten 2018 Prøveeksamen IN1000-INF1001-H18 Informasjon Prøveeksamen i IN1000 høsten 2018 Tid Fra tirsdag 6.11 kl. 14:15 til tirsdag 13.11 kl. 12:00 (Normal eksamenstid er 4 timer) Oppgavene Oppgave 2b og 2c er flervalgsoppgaver.

Detaljer

Med løkke: Læringsmål og pensum. TDT4110 Informasjonsteknologi grunnkurs: Tema: Løkker/Sløyfer Utgave 3: Kap. 4 Utgave 2: Kap. 5. Mål.

Med løkke: Læringsmål og pensum. TDT4110 Informasjonsteknologi grunnkurs: Tema: Løkker/Sløyfer Utgave 3: Kap. 4 Utgave 2: Kap. 5. Mål. 1 Kunnskap for en bedre verden TDT4110 Informasjonsteknologi grunnkurs: Tema: Løkker/Sløyfer Utgave 3: Kap. 4 Utgave 2: Kap. 5 Terje Rydland - IDI/NTNU 2 Læringsmål og pensum Mål Lære om begrepet løkker

Detaljer

Kort om kursene INF1100 og MAT-INF1100L

Kort om kursene INF1100 og MAT-INF1100L Kort om kursene INF1100 og MAT-INF1100L Hans Petter Langtangen 1,2 Joakim Sundnes 1,2 Simula Research Laboratory 1 University of Oslo, Dept. of Informatics 2 Aug 24, 2016 INF1100 er en første introduksjon

Detaljer

Fagevaluering FYS Kvantemekanikk

Fagevaluering FYS Kvantemekanikk Fagevaluering FYS3110 - Kvantemekanikk høst 07 Foreleser: Carsten A. Lütken Fysisk Fagutvalg 31. januar 2008 Generell informasjon Spørreundersøkelsen foretatt under en forelesning i faget høsten 2007.

Detaljer

Oppsummering fra sist

Oppsummering fra sist 1 av 34 Kunnskap for en bedre verden TDT4110 Informasjonsteknologi grunnkurs: Tema: Løkker/Sløyfer Utgave 3: Kap. 4 Terje Rydland - IDI/NTNU 2 av 34 Oppsummering fra sist Betingelser i Python: ,

Detaljer

Øvingsforelesning i Python (TDT4110)

Øvingsforelesning i Python (TDT4110) Øvingsforelesning i Python (TDT4110) Tema: Øving 2, Betingelser, if/elif/else Kristoffer Hagen Oversikt Praktisk informasjon Gjennomgang av Øving 1 Oppgaver for Øving 2 2 Praktisk Bruke andre studasser

Detaljer

INF1000 Eksamen 2014 (modifisert)

INF1000 Eksamen 2014 (modifisert) INF1000 Eksamen 2014 (modifisert) Oppgave 1 (4 poeng) a) Hva er verdien til tall etter at følgende kode er utført? tall = (5+3)*2 tall = tall+2 b) Anta at følgende programsetninger utføres. Hva skrives

Detaljer

TDT4110 Informasjonsteknologi grunnkurs: Tema: Løkker. - 3rd edition: Kapittel 4. Professor Alf Inge Wang

TDT4110 Informasjonsteknologi grunnkurs: Tema: Løkker. - 3rd edition: Kapittel 4. Professor Alf Inge Wang 1 TDT4110 Informasjonsteknologi grunnkurs: Tema: Løkker - 3rd edition: Kapittel 4 Professor Alf Inge Wang 2 Læringsmål og pensum Mål Lære om begrepet løkker Lære om bruk av while-løkke Lære om bruk av

Detaljer

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

Etter uke 6 skal du. Introduksjon til objektorientert programmering. Hva skjedde ~1967? INF1001. Grunnkurs i objektorientert programmering Etter uke 6 skal du Kjenne til motivasjonen for objektorientert programmering Introduksjon til objektorientert programmering INF1001 Høst 2016 Forstå hva en klasse er, og forskjellen på klasse og objekt

Detaljer

Eksamensoppgaver 2014

Eksamensoppgaver 2014 Eksamensoppgaver 2014 Først kommer alle de relevante små-oppgavene og deretter den store oppgaven. Oppgave 1 (4 p) a) Hva er verdien til tall etter at følgende kode er utført? tall = (5+3)*2 tall = tall+2

Detaljer

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

Innhold uke 9. Objektorientert programmering i Python. Om ukens pensum. Referanser og objekter Tema: Mer komplekse strukturer Objektorientert programmering i Python IN1000 Høst 2017 uke 9 Siri Moe Jensen Innhold uke 9 Tema: Mer komplekse strukturer Referanser versus objekter Referanser mellom objekter Lister av objekter inkl

Detaljer

INF Obligatorisk innlevering 7

INF Obligatorisk innlevering 7 INF1000 - Obligatorisk innlevering 7 Høsten 2016, IFI UiO Frist: 6. November 2016 kl 22:00 Tema denne uka: Et større objektorientert program. Administrasjon av eierskap og utlån av DVD-er I denne oppgaven

Detaljer

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

Læringsmål uke 7. Objektorientert programmering i Python: Introduksjon. Innhold uke 7. Lite tilbakeblikk: Programflyt og skop Læringsmål uke 7 Objektorientert programmering i Python: Introduksjon IN1000 Høst 2018 uke 7 Siri Moe Jensen Kjenne til motivasjon og bakgrunn for objektorientert programmering Kunne definere en klasse,

Detaljer

Periodisk emnerapport for IBER1501 Høsten 2014 Tor Opsvik

Periodisk emnerapport for IBER1501 Høsten 2014 Tor Opsvik Periodisk emnerapport for IBER1501 Høsten 2014 Tor Opsvik Innledning og oppsummering Kurset IBER1501 er et introduksjonskurs til iberiske verdens historie. Kurset er på 10 studiepoeng og undervises fra

Detaljer

Rapport IN-KJM H Audun Skau Hansen, Januar 2019

Rapport IN-KJM H Audun Skau Hansen, Januar 2019 Rapport IN-KJM1900 2018H Audun Skau Hansen, Januar 2019 Undervisningsopplegg Kjemidelen av kurset ble avviklet etter samme modell som i 2017, med et todelt prosjekt som strakk seg over 5 uker. I det følgende

Detaljer

Metoder med parametre, løkker og arrayer

Metoder med parametre, løkker og arrayer Metoder med parametre, løkker og arrayer Løse problemer med programmering INF1000, uke3 Ragnhild Kobro Runde METODER MED PARAMETRE Statiske void-metoder med parametre Den typen metoder vi så på forrige

Detaljer

Informasjon Eksamen i IN1000 høsten 2017

Informasjon Eksamen i IN1000 høsten 2017 Informasjon Eksamen i IN000 høsten 207 Tid 8. desember kl. 09.00 (4 timer) Faglærerne vil besøke lokalet ca kl 0. Oppgavene Oppgave 2b og 2c er flervalgsoppgaver. Her får man det angitte antall poeng om

Detaljer

Fagevaluering FYS2210 Høst 2004

Fagevaluering FYS2210 Høst 2004 Fagevaluering FYS2210 Høst 2004 Fysisk Fagutvalg 9. desember 2004 Generell informasjon 22. november 2004 gjennomførte Fysisk Fagutvalg en spørreundersøkelse blandt studentene på FYS2210 i forbindelse med

Detaljer

Læringsmål og pensum. Intro løkker. Mål Lære om begrepet løkker Lære om bruk av while-løkke Lære om bruk av for-løkke Pensum. Kapittel 4.

Læringsmål og pensum. Intro løkker. Mål Lære om begrepet løkker Lære om bruk av while-løkke Lære om bruk av for-løkke Pensum. Kapittel 4. 1 TDT4110 Informasjonsteknologi grunnkurs: Tema: Løkker - 3rd edition: Kapittel 4 Professor Alf Inge Wang 2 Læringsmål og pensum Mål Lære om begrepet løkker Lære om bruk av while-løkke Lære om bruk av

Detaljer

INF109 (kun et utvalg av kommentarene er med i denne rapporten)

INF109 (kun et utvalg av kommentarene er med i denne rapporten) INF109 (kun et utvalg av kommentarene er med i denne rapporten) Respondenter Prosent Ny 0 0,0% Distribuert 18 47,4% Noen svar 0 0,0% Gjennomført 19 50,0% Frafalt 1 2,6% I alt 38 100,0% Er det første gang

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

Kort om kursene IN1900, MAT-IN1105, IN-KJM1900

Kort om kursene IN1900, MAT-IN1105, IN-KJM1900 Kort om kursene IN1900, MAT-IN1105, IN-KJM1900 Joakim Sundnes 1 Ole Christian Lingjærde 1 Department of Informatics, University of Oslo 1 Aug 23, 2017 Plan for 23 august Info om kursene IN1900, MAT-IN1105,

Detaljer

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

Innhold uke 7. Objektorientert programmering i Python: Introduksjon. Lite tilbakeblikk: Programflyt og skop. Lite tilbakeblikk: Funksjoner er uttrykk Innhold uke 7 Objektorientert programmering i Python: Introduksjon IN1000 Høst 2017 uke 7 Siri Moe Jensen Lite tilbakeblikk: Prosedyrer og funksjoner Objektorientert programmering Introduksjon: Hvorfor,

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æringsmål og pensum. Oversikt

Læringsmål og pensum. Oversikt 1 2 Læringsmål og pensum TDT4105 Informasjonsteknologi grunnkurs: Uke 39 Betingede løkker og vektorisering Læringsmål Skal kunne forstå og programmere betingede løkker med while Skal kunne utnytte plassallokering

Detaljer

Kap 2: Løkker og lister

Kap 2: Løkker og lister Kap 2: Løkker og lister Ole Christian Lingjærde, Inst for Informatikk, UiO 26-30 August, 2019 (Del 2 av 2) Forrige forelesning på en foil Formatert utskrift: %-operator og f-strings To typer løkker: while-løkker

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

AlgDat - Øvingsforelesning 1 Introduksjon til Python, lenkede lister og øving 1

AlgDat - Øvingsforelesning 1 Introduksjon til Python, lenkede lister og øving 1 AlgDat - Øvingsforelesning 1 Introduksjon til Python, lenkede lister og øving 1 Ole Kristian Pedersen, Høst 2016 Agenda Introduksjon til Python for begynnere Intro til øving 1 Litt om lenkede lister Øvingssystemet

Detaljer

IN uke 1. Komme i gang med programmering

IN uke 1. Komme i gang med programmering IN1000 - uke 1 Komme i gang med programmering Plan for forelesingen Hva er programmering? Skrive og kjøre våre første program Variabler Feilmeldinger Innlesing fra tastatur Beslutninger (if) Plan for forelesingen

Detaljer

if-tester Funksjoner, løkker og iftester Løkker og Informasjonsteknologi 2 Læreplansmål Gløer Olav Langslet Sandvika VGS

if-tester Funksjoner, løkker og iftester Løkker og Informasjonsteknologi 2 Læreplansmål Gløer Olav Langslet Sandvika VGS Løkker og if-tester Gløer Olav Langslet Sandvika VGS 29.08.2011 Informasjonsteknologi 2 Funksjoner, løkker og iftester Læreplansmål Eleven skal kunne programmere med enkle og indekserte variabler eller

Detaljer

YouTube-kanal ITGK. Læringsmål og pensum

YouTube-kanal ITGK.  Læringsmål og pensum 1 TDT4110 Informasjonsteknologi grunnkurs: Tema: Enkle funksjoner - 3rd edition: Kapittel 5.1-5.6 Professor Alf Inge Wang 2 YouTube-kanal ITGK Professor Guttorm Sindre (foreleser den andre Python-parallellen

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i INF1010 Objektorientert programmering Eksamensdag: 6. juni 2013 Tid for eksamen: 09.00 15.00 Oppgavesettet er på 5 sider. Vedlegg:

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

lage og bruke funksjoner som tar argumenter lage og bruke funksjoner med returverdier forklare forskjellen mellom globale og lokale variabler

lage og bruke funksjoner som tar argumenter lage og bruke funksjoner med returverdier forklare forskjellen mellom globale og lokale variabler 42 Funksjoner Kapittel 4 Funksjoner Etter dette kapitlet skal du kunne lage og bruke enkle funksjoner lage og bruke funksjoner som tar argumenter lage og bruke funksjoner med returverdier forklare forskjellen

Detaljer

Feilmeldinger, brukerinput og kontrollflyt

Feilmeldinger, brukerinput og kontrollflyt Feilmeldinger, brukerinput og kontrollflyt Skjønne hvordan et program presist utføres og forberede seg på håndtering av feil INF1000, uke2 Ragnhild Kobro Runde Programmeringskrøll Programmet vil ikke kjøre

Detaljer

Seminaroppgaver IN1010, uke 2

Seminaroppgaver IN1010, uke 2 Seminaroppgaver IN1010, uke 2 1.a: Skriv en klasse HeiVerden.java. Klassen skal inneholde en main- metode (se på notatet fra tidligere). Inne i main -metoden skal programmet først la brukeren oppgi en

Detaljer

EVALUERING PRAKTISK-PEDAGOGISK UTDANNING (PPU) UNIVERSITETET I BERGEN 2014/2015

EVALUERING PRAKTISK-PEDAGOGISK UTDANNING (PPU) UNIVERSITETET I BERGEN 2014/2015 EVALUERING PRAKTISK-PEDAGOGISK UTDANNING (PPU) UNIVERSITETET I BERGEN 2014/2015 4.MAI 2015 Inndeling - Bakgrunn - Del 1: Didaktikk - Del 2: Pedagogikk - Del 3: Praksis - Del 4: Studiet generelt - oppsummering

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

Fagevaluering AST1100 Høst 2004

Fagevaluering AST1100 Høst 2004 Fagevaluering AST1100 Høst 2004 Fysisk Fagutvalg 29. november 2004 Generell informasjon 22. november 2004 gjennomførte Fysisk Fagutvalg en spørreundersøkelse blandt studentene på AST1100 i forbindelse

Detaljer

INF1000 Eksamen 2014 (modifisert)

INF1000 Eksamen 2014 (modifisert) INF1000 Eksamen 2014 (modifisert) Oppgave 1 (4 poeng) a) Hva er verdien til tall etter at følgende kode er utført? tall = (5+3)*2 tall = tall+2 18. b) Anta at følgende programsetninger utføres. Hva skrives

Detaljer

Hver ting i en liste kalles et element. En liste lages ved å skrive elementer inni [], med, mellom elementene:

Hver ting i en liste kalles et element. En liste lages ved å skrive elementer inni [], med, mellom elementene: Lister og indekser Skrevet av: Ole Kristian Pedersen, Kodeklubben Trondheim Kurs: Python Tema: Tekstbasert Fag: Programmering Klassetrinn: 5.-7. klasse, 8.-10. klasse Introduksjon Denne oppgaven handler

Detaljer

Mattespill Nybegynner Python PDF

Mattespill Nybegynner Python PDF Mattespill Nybegynner Python PDF Introduksjon I denne leksjonen vil vi se litt nærmere på hvordan Python jobber med tall, og vi vil lage et enkelt mattespill. Vi vil også se hvordan vi kan gjøre ting tilfeldige.

Detaljer

GEOV364. Hvilket semester er du på? Hva er ditt kjønn? Er du...? Er du...? - Annet PhD

GEOV364. Hvilket semester er du på? Hva er ditt kjønn? Er du...? Er du...? - Annet PhD GEOV364 Hvilket semester er du på? Hva er ditt kjønn? Er du...? Er du...? - Annet PhD Mener du at de anbefalte forkunnskaper var nødvendig? Er det forkunnskaper du har savnet? Er det forkunnskaper du har

Detaljer

Overordnet tilfredshet. I hvilken grad er du enig i de følgende påstandene: Skala: 1-5 (1 = ikke enig og 5 = helt enig)

Overordnet tilfredshet. I hvilken grad er du enig i de følgende påstandene: Skala: 1-5 (1 = ikke enig og 5 = helt enig) Overordnet tilfredshet Skala: 1-5 (1 = ikke enig og 5 = helt enig) Universitetet i Oslo Master, Universitetet i Oslo Jeg går på det studieprogrammet jeg helst ville gå på 4,6 4,1 4,4 4,6 Jeg er, alt i

Detaljer

Eksempel på organisering av gruppeundervisning med en kritisk vurdering

Eksempel på organisering av gruppeundervisning med en kritisk vurdering Eksempel på organisering av gruppeundervisning med en kritisk vurdering Hans Petter Langtangen Simula Research Laboratory Inst. for informatikk, Universitetet i Oslo Mars, 2007 Outline 1 Litt om kurset

Detaljer

IN uke 1. Komme i gang med programmering

IN uke 1. Komme i gang med programmering IN1000 - uke 1 Komme i gang med programmering Et lite oppdrag i bakgrunnen Under pultene på bakerste rad er det klistret post-it lapper med to tall skrevet på Regn ut summen av to nederste tall, skriv

Detaljer

TDT4110 Informasjonsteknologi grunnkurs: Tema: Enkle funksjoner. - 3rd edition: Kapittel Professor Alf Inge Wang

TDT4110 Informasjonsteknologi grunnkurs: Tema: Enkle funksjoner. - 3rd edition: Kapittel Professor Alf Inge Wang 1 TDT4110 Informasjonsteknologi grunnkurs: Tema: Enkle funksjoner - 3rd edition: Kapittel 5.1-5.6 Professor Alf Inge Wang 2 YouTube-kanal ITGK Professor Guttorm Sindre (foreleser den andre Python-parallellen

Detaljer

Programmering Høst 2017

Programmering Høst 2017 Programmering Høst 2017 Tommy Abelsen Ingeniørfag - Data Innledning Dette er et dokument med litt informasjon og eksempler om kontrollstrukturer, samt oppgaver til forskjellige kontrollstrukturer. Spør

Detaljer

Kom forberedt til tirsdag. INF1000 Tips til obligatorisk oppgave 4. Noen generelle tips. Oblig4: Komme igang

Kom forberedt til tirsdag. INF1000 Tips til obligatorisk oppgave 4. Noen generelle tips. Oblig4: Komme igang Kom forberedt til tirsdag INF1000 Tips til obligatorisk oppgave 4 Kikk på prøveeksamen fra 2004 http://www.uio.no/studier/emner/matnat/ifi/inf1000/h 07/undervisningsmateriale/proveeksamen-H2004.pdf Tittel:

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

JS: Grunnleggende JavaScript Nybegynner

JS: Grunnleggende JavaScript Nybegynner JS: Grunnleggende JavaScript Nybegynner Web Introduksjon I denne oppgaven skal du lære helt enkle og grunnleggende elementer av JavaScript. Du vil lære om variabler, if-setninger, funksjoner og løkker.

Detaljer

Overordnet tilfredshet. I hvilken grad er du enig i de følgende påstandene: Skala: 1-5 (1 = ikke enig og 5 = helt enig)

Overordnet tilfredshet. I hvilken grad er du enig i de følgende påstandene: Skala: 1-5 (1 = ikke enig og 5 = helt enig) Overordnet tilfredshet I hvilken grad er du enig i de følgende påstandene: Skala: 1-5 (1 = ikke enig og 5 = helt enig) Bachelor, 6 5 4 3 6 5 4 3 Jeg går på det studieprogrammet jeg helst ville gå på 4,0

Detaljer

Løse reelle problemer

Løse reelle problemer Løse reelle problemer Litt mer om løkker, metoder med returverdier og innlesing fra fil INF1000, uke4 Geir Kjetil Sandve Repetisjon fra forrige uke: while Syntaks: while (condition) do1; do2;... Eksempel:

Detaljer

Hvor mye praktisk kunnskap har du tilegnet deg på dette emnet? (1 = ingen, 5 = mye)

Hvor mye praktisk kunnskap har du tilegnet deg på dette emnet? (1 = ingen, 5 = mye) INF102 Er du? Er du? - Annet Hvor mye teoretisk kunnskap har du tilegnet deg på dette emnet? (1 = ingen, 5 = mye) Hvor mye praktisk kunnskap har du tilegnet deg på dette emnet? (1 = ingen, 5 = mye) Hvor

Detaljer

MAT-INF 1100: Obligatorisk oppgave 1

MAT-INF 1100: Obligatorisk oppgave 1 13. september, 2018 MAT-INF 1100: Obligatorisk oppgave 1 Innleveringsfrist: 27/9-2018, kl. 14:30 i Devilry Obligatoriske oppgaver («obliger») er en sentral del av MAT-INF1100 og er utmerket trening i å

Detaljer

Utførelse av programmer, metoder og synlighet av variabler i JSP

Utførelse av programmer, metoder og synlighet av variabler i JSP Utførelse av programmer, metoder og synlighet av variabler i JSP Av Alf Inge Wang 1. Utførelse av programmer Et dataprogram består oftest av en rekke programlinjer som gir instruksjoner til datamaskinen

Detaljer

INF Obligatorisk innlevering 7

INF Obligatorisk innlevering 7 INF1000 - Obligatorisk innlevering 7 Frist: 14:00 3. november 2015 Administrasjon av eierskap og utlån av DVD-er I denne oppgaven skal du skrive et program som holder orden på dine egne og andres DVD-er.

Detaljer

JS: Grunnleggende JavaScript

JS: Grunnleggende JavaScript JS: Grunnleggende JavaScript Skrevet av: Lars Klingenberg Kurs: Web Tema: Tekstbasert, Nettside Fag: Matematikk, Programmering, Teknologi Klassetrinn: 5.-7. klasse, 8.-10. klasse, Videregående skole Introduksjon

Detaljer

Husk at du skal ha to vinduer åpne. Det ene er 'Python Shell' og det andre er for å skrive kode i.

Husk at du skal ha to vinduer åpne. Det ene er 'Python Shell' og det andre er for å skrive kode i. Skilpaddeskolen Skrevet av: Oversatt fra Code Club UK (//codeclub.org.uk) Oversatt av: Bjørn Einar Bjartnes Kurs: Python Tema: Tekstbasert Fag: Programmering, Kunst og håndverk Klassetrinn: 8.-10. klasse

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

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

Python: Løkker. TDT4110 IT Grunnkurs Professor Guttorm Sindre Python: Løkker TDT4110 IT Grunnkurs Professor Guttorm Sindre Referansegruppe MTTK: havardmellbye@gmail.com MTMT: Daniel.Vadseth@hotmail.com MTDESIGN 9valinn@gmail.com MTKOM: jonbs@stud.ntnu.no MLREAL:

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

Løse reelle problemer

Løse reelle problemer Løse reelle problemer Løse problemer med data fra fil, samt litt mer om funksjoner IN1000, uke6 Geir Kjetil Sandve Mål for uken Få enda mer trening i hvordan bruke løkker, samlinger og beslutninger for

Detaljer

Svarskjema for kurset 'Databaser' - evalueringsrunde 2 - Antall svar på eval: 13

Svarskjema for kurset 'Databaser' - evalueringsrunde 2 - Antall svar på eval: 13 Kurs: Databaser(10stp) Faglærer: Edgar Bostrøm Dato: 05.05.2009 1. Hvilke forventningen hadde du til kurset på forhånd? At det skulle være vanskelig og mye å gjøre, men at det også ville være spennende

Detaljer

Betegnelse på undervisningsformer og godkjenningsrutiner for obligatoriske aktiviteter

Betegnelse på undervisningsformer og godkjenningsrutiner for obligatoriske aktiviteter Betegnelse på undervisningsformer og godkjenningsrutiner for obligatoriske aktiviteter Dette er en oppsummering fra Workshop 18. desember 2017: «Erfaringsdeling og diskusjon rundt bruk av obligatoriske

Detaljer

Spesifikasjon av Lag emne

Spesifikasjon av Lag emne Dagens forelesning o Kort repetisjon av kravspesifikasjon med UML Fra krav til objekter Hva skal systemet gjøre? UML: Bruksmønstermodeller (Use Cases) o Objektdesign Ansvarsdrevet OO: CRC og UML Sekvensdiagrammer

Detaljer

Evaluering av emnet PED2202 Barn og Ungdom: Oppvekst og opplæring våren 2019

Evaluering av emnet PED2202 Barn og Ungdom: Oppvekst og opplæring våren 2019 Evaluering av emnet PED2202 Barn og Ungdom: Oppvekst og opplæring våren 2019 Kristinn Hegna, Victoria de Leon Born og Kenneth Silseth Oppsummering Alt i alt er studentene forholdsvis fornøyde med både

Detaljer

INF Introduksjon til design, bruk, interaksjon Introduksjon

INF Introduksjon til design, bruk, interaksjon Introduksjon INF1500 - Introduksjon til design, bruk, interaksjon Introduksjon 18. august 2014 Institutt for Informatikk, Universitetet i Oslo joshi@ifi.uio.no INF1500 Introduksjon 1 Dagens forelesning Hvem er involvert

Detaljer

Oppgaver og løsningsforslag i undervisning. av matematikk for ingeniører

Oppgaver og løsningsforslag i undervisning. av matematikk for ingeniører Oppgaver og løsningsforslag i undervisning av matematikk for ingeniører Trond Stølen Gustavsen 1 1 Høgskolen i Agder, Avdeling for teknologi, Insitutt for IKT trond.gustavsen@hia.no Sammendrag Denne artikkelen

Detaljer