Beskjeder
Riktig svar til de autoretta oppgavene skal kunne sees i Inspera. For de ?vrige oppgavene (unntatt ekstraoppgavene 25 og 26) ble det laget l?sningsforslag som sensorene kunne bruke under sensuren. Disse kan v?re til god hjelp for dem som lurer p? hvorfor de fikk det resultatet som de fikk: G? igjennom svarene og gj?r en selvevaluering. Her er en zip-fil med forslag til riktig l?sning.
Alle .py-filene skal v?re kj?rbare. For del 3 er det viktig at den vedlagte .txt-fila (med data om alle kommuner i Norge) ligger i samme mappe som pythonprogrammet f?r det kj?res. Merk at deler av programmene er lagt til for testing og kj?ring og ikke var en del av det som skulle v?re i svarene p? oppgaven under eksamen.
Spr?k p? eksamen
Grunna omfattande oppg?vetekst vert det ikkje laga nynorsk oppg?vesett v?ren 2023, jfr unntak i § 3b i Forskrift om m?lform i eksamensoppgaver.
Eksamen vil v?re tilgjengelig p? bokm?l og engelsk. Oppgavene kan besvares p? bokm?l, nynorsk, svensk, dansk eller engelsk.
Om eksamen
- Eksamen best?r av tre hoveddeler.
- Den f?rste delen best?r av sm? oppgaver, som rettes automatisk.
- Den andre delen best?r av oppgaver hvor du skal programmere og skrive.
- Den tredje delen er et noe st?rre sammenhengende program.
- Alle svar skal skrives inn i Inspera og det er ingen mulighet for opplasting av h?ndskrevne svar.
- Info om eksamen fra emnesida.
Kommentarer og tips
- Det er lurt ...
Vi gj?r oppmerksom p? at ?rets eksamen kan komme til ? inneholde noen oppgavetyper som er forskjellig fra pr?veeksamen - dere finner eksempler og l?singsforslag til eksemplene her.
Pr?ven er tilgjengelig i Inspera fram til 30. mai. NB! Ikke lever pr?veeksamen, da mister du tilgangen.
L?sningsforslag finner du i denne mappa. De er alle i form av kj?rbare programmer. I oppgave 1 skrives rett svar ut hvis du kj?rer programmet. I de andre forslagene er det testkode med p? slutten. Dette er det ikke alltid spurt etter i oppgaven. Har du sp?rsm?l til l?sningsforslaget, bruk mattermostkanalen v?r. Det er ikke lurt ? lese l?sningsforslag til en oppgave f?r den er fors?kt l?st.
Mange vil nok mene at den beste m?ten ? ?ve til eksamen, er ved ? l?se tidligere eksamensoppgaver. Vent med ? se p? evt. l?sningsforslag til du har fors?kt ? l?se oppgaven selv. P? semestersida fra H 2022 finnes ogs? en oppgave som var pr?veeksamen da.
L?sningsforslag til pr?veeksamen vil bli gjennomg?tt p? repetisjonsgruppa mandag 22. mai. Pr?veeksamen vil v?re tilgjengelig i Inspera fram til eksamensdagen. Vi anbefaler alle ? bruke god tid p? ? trene p? ? skrive i Inspera, gjerne p? maskiner (Windows) her p? Ifi som har lignende tastatur som maskinene i Silurveien. S?rlig kan Mac-brukere f? utfordringer m.h.t. noen tegn som f.eks. ' " [ ] { }
Still gjerne sp?rsm?l om oppgavene og l?sningsforslag i Mattermost. Ikke send sp?rsm?l til oss p? e-post. Det ...
I dag vil vi se p? en del eksempler fra oblig 8 i forelesningen, slik at dere som er ferdige med den kan l?re mer av det dere har gjort, og dere som ikke er helt ferdige kan f? litt inspirasjon i innspurten.
Python Tutor er et enkelt og greit alternativ for ? forst? hva som skjer i maskinen og finne feil... n?r all koden ligger i samme fil. Men n?r den er spredt over flere forskjellige filer, som i oblig 7 og 8, hvordan kan vi gj?re det samme?
Svaret er at vi kan gj?re dette direkte i VS Code, som har en innebygd debugger:
Oppgaveteksten til oblig 8 er n? ute i ny versjon, og det anbefales ? laste ned/skrive ut denne p? nytt.
Vi fant ut at i den gamle versjonen ble det for komplisert ? finne ut hva man skulle gj?re p? oppgave 3 (i forhold til det dere har f?tt trent p? tidligere). Vi har derfor delt denne oppgaven i tre deloppgaver, som gj?r at det blir en god del lettere ? f? oversikt og retning i det man gj?r.
Vi ferdigstilte de programmene (hus og personer, lenkelister) som vi har jobbet med de to siste tirsdagene. Programmene finner du i denne mappa. Bare vei.py er oppdatert etter forelesningen.
- eiendommer00–6 viser utviklingen av et program med en samling av hus (ordbok/liste/lenkeliste)
- lliste00–7 er et generelt lenkelisteprogram
- vei.py er laget p? grunnlag av eiendommer06 og lliste07 ved ? "sl? dem sammen" til ett program.
Lek gjerne med dem og pr?vekj?r i PythonTutro (for vei.py, m? kommentarer fjernes). Har du sp?rsm?l/kommentarer til programmene, skriv et innlegg i mattermostkanalen v?r.
Koden som ble (delvis) gjennomg?tt finner du i mappa uke10og11 som vanlig under lysark/kode fra forelesning (i venstre marg).
Til oblig 7 er det en oppgave om datastrukturtegning. I dokumentet datastrukturtegninger.pdf ser dere et eksempel p? slike tegninger. Merk ogs? at det er en slik tegning PythonTutor lager for oss.
Programfilene med navn eiendommer??.py er b?r studeres i rekkef?lge (fra 00 til 04). Som det framg?r av kommentarer i programmene, er de ikke ferdige enn?, bortsett fra nr. 00.
Eksemplene viser forskjellige m?ter ? modellere den samme informasjonen p? med forskjellige datastrukturer (ordbok, liste, lenkeliste, ...).
I forelesningen 18. april vi vi jobbe videre med disse eksemplene. Programmene lliste01–06 viser utvikling av et program for lenkelister. Vi ...
(Hvis du bare leser forelesningsnotatene og ikke var p? forelesning, trenger du ikke tenke p? dette.)
TLDR: int-objekter oppf?rer seg ikke annerledes enn andre Python-objekter n?r det gjelder referanser
Det som er spesielt med int-objekter, er at de er s?kalt immutable, det vil si at det ikke g?r an ? endre verdien til et int-objekt p? noen m?te etter at det er laget. Vi har ingen metoder som tilsvarer .mal(farge) for int-objekter og endrer tilstanden til objektet.
"Men hva om du tar
a = 1
a += 1
vil du ikke gj?re det da?"
Nei, "a += 1" er bare forkortelse for "a = a + 1", og da returneres et nytt int-objekt. (Og dette har de forresten f?tt til ved ? bruke en magisk metode __add__ som definerer hvordan operatoren + skal oppf?re seg for denne typen objekter.) Det skjer ikke noe med det gamle objektet - det har fortsatt samme verdi for all framtid....
Hei, alle som tar IN1000 i v?r!
Vi trenger tilbakemelding fra dere p? hvordan det har v?rt ? v?re IN1000-student s? langt, og vil gjerne at dere fyller ut dette nettskjemaet. Det skal ta ca. 5-10 minutter avhengig av hvor mye dere har p? hjertet. Skjemaet er helt anonymt.
Husk ? velge retteform ved ? legge inn en kommentar i Devilry hver gang du leverer. Dette gj?r det lettere for oss ? finne retter og du f?r raskere tilbakemelding. Har du ikke levert skjema med rettetider og ?nsker samretting, b?r du opplyse om dette i samme kommentar i Devilry n?r du leverer. V?r oppmerksom p? at hvis du velger tradretting er det noen tillegssp?rsm?l du ogs? m? besvare i kommentaren.
I selve forelesningen 14. februar snek det seg inn en feil i live-kodingen om parametre. Funksjonen refererte til en variabel (navneliste) som tilh?rte hovedprogrammet. Dette er ikke en god m?te ? gj?re det p?, fordi det gj?r det umulig ? bruke funksjonen i et annet program senere - listen burde derfor v?rt en parameter til funksjonen i stedet. I versjonen av livekodingen som ligger i timeplanen er dette rettet opp.
Hvis du ikke var i forelesningen, er ikke dette noe du trenger ? tenke p?. Hvis du var i forelesningen, anbefaler jeg at du sletter filen vi live-kodet der og heller ser p? parametere.py (eller l?sningsforslaget) som ligger i timeplanen - da f?r du et eksempel p? hvordan man heller b?r gj?re det.
Vi har laget en oversikt over viktige ressurser i emnet, som vi oppdaterer n?r det dukker opp noe nytt dere trenger ? finne fram til. Hvis det er noe du leter etter som du ikke finner link til her, gi oss beskjed om det p? Mattermost (som du finner ved ? f?lge linken ovenfor).
Svar: Nei. :)
For andre sp?rsm?l knyttet til obliger fra tidligere semestre, sp?r studieadministrasjonen.
Minner om at alle undervisningsaktiviteter er ?pne for alle. Det gjelder ogs? gruppeundervisninga. Se timeplanen. Det arrangeres et digitalt m?te (Zoom) for dem som ikke kan delta i de fysiske undervisningsaktivitetene onsdag 8. februar kl. 15.00. Her vil vi gi r?d og tips om hvordan man kan f?lge emnet n?r man ikke kan v?re tilstede. Se v?r kommunikasjonskanal Mattermost.
Hvis dere leser et sted at man skal bruke noe som kalles CodeGrade, skyldes dette at dere har g?tt inn p? en oppgave som ikke er publisert for dette semesteret (3–8) enn?. Vi bruker Devilry.
VS Code er en text-editor utviklet av Microsoft, som st?tter b?de Linux, Windows og macOS. Grunnen...
I dette kurset skal vi l?re ? programmere fra bunnen av. Her er noe informasjon om undervisningstilbudet.
F?rste obliglab blir onsdag 25. januar kl. 14.15–16 i seminarrom C. Vi skal snakke om innleveringsoppgavene, obliglaben og hvordan man jobber med innleveringsoppgaver, andre oppgaver og pythonprogrammering p? egen maskin. Hjelp med ? tilrettelegge egen maskin for IN1000. Ta med din b?rbare.