INF3331 – Problemløsning med høynivå-språk
Beskrivelse av emnet
Timeplan, pensum og eksamensdato
Kort om emnet
Det gis en innføring i grunnleggende og avanserte sider ved script-språket Python, bl.a. datastrukturer, regulære uttrykk, klasser, objektorientert programmering, interaksjon med operativsystemet, plattform-uavhengig kode, effektiv design av programsystemer med tidskritiske operasjoner og utvidelser i kompilerte språk som C/C++ og Fortran via script-språkets C API. Emnet gir også en grunnleggende innføring i script-språket Bash og programmering, kompilering/linking, optimalisering og profilering av C, C++ og Fortran kode. Spesiell vekt legges på praktisk problemløsning.
Hva lærer du?
- har du kjennskap til grunnleggende og mer avanserte sider ved programmeringsspråket Python, bl. a. datastrukturer, klasser, regulære uttrykk og interaksjon med operativsystemet.
- kan du skrive script i Python og Bash for å automatisere egne arbeidsoppgaver.
- kan du bruke vektorisering til å skrive effektive programmer i Python.
- kan du kombinere Python med kompilerte programmeringsspråk som C, C++ og Fortran
- kan du skrive programmer som løser oppgaver fra ulike fagområder, som fysikk, medisin, biologi og finans.
Opptak og adgangsregulering
Studenter må hvert semester søke og få plass på undervisningen og melde seg til eksamen i Studentweb.
Dersom du ikke allerede har studieplass ved UiO, kan du søke opptak til våre studieprogrammer, eller søke om å bli enkeltemnestudent.
Forkunnskaper
Obligatoriske forkunnskaper
I tillegg til generell studiekompetanse eller realkompetanse må du dekke spesielle opptakskrav:
- Matematikk R1 eller Matematikk (S1+S2)
De spesielle opptakskravene kan også dekkes med fag fra videregående opplæring før Kunnskapsløftet, eller på andre måter. Les mer om spesielle opptakskrav.
Anbefalte forkunnskaper
INF1000 – Grunnkurs i objektorientert programmering (videreført)/INF1100 – Grunnkurs i programmering for naturvitenskapelige anvendelser (videreført)
Overlappende emner
- 10 studiepoeng overlapp mot INF4331 – Problemløsning med høynivå-språk (videreført)
- 5 studiepoeng overlapp mot INF3330 – Problemløsning med høynivå-språk (nedlagt)
- 5 studiepoeng overlapp mot INF4330 – Problemløsning med høynivå-språk (nedlagt)
- 5 studiepoeng overlapp mot INF5660 – Avansert problemløsning med høynivå-språk (nedlagt)
Undervisning
2 timer forelesninger og 2 timer øvelser per uke. Forelesningene vil være en kombinasjon av ordinære forelesninger og veiledet prosjektarbeid og oppgaveløsning.
Eksamen
Mappeevaluering. Les mer om krav til innlevering av oppgaver, gruppearbeid og lovlig samarbeid under retningslinjer for obligatoriske oppgaver.
Hjelpemidler
Alle hjelpemidler tillatt
Karakterskala
Emnet bruker karakterskala bestått/ikke bestått. Les mer om karakterskalaen.
Begrunnelse og klage
Adgang til ny eller utsatt eksamen
Studenter som dokumenterer gyldig fravær fra ordinær eksamen, kan ta utsatt eksamen i starten av neste semester.
Det tilbys ikke ny eksamen til studenter som har trukket seg under ordinær eksamen, eller som ikke har bestått.
Trekk fra eksamen
Det er mulig å ta eksamen i emnet inntil tre ganger. Dersom du trekker deg fra eksamen etter fristen eller under eksamen, bruker du et eksamensforsøk.
Annet
Det er sterkt anbefalt å møte på første forelesning fordi det vil bli gitt viktig informasjon.