REA1121

Matematikk for programmering

Sist undervist 2019

Vår

Gjøvik

Engelsk

Oversikt

Ståprosent

100 %

18 poeng

Karakterfordeling
Snitt over tid
Ståprosent over tid

Om emnet

Faglig innhold

Logikk
- Logiske gåter
- Løsning av logiske gåter ved hjelp av programmering
- Bitvis logikk

Sannsynlighetsregning
- Elementær sannsynlighetsregning og telling
- Betinget sannsynlighet
- Stokastiske variable
- Modellering ved hjelp av Markov-kjeder
- Forventningsverdi og varians
- Programmering av simuleringer

Matematikk for 3d-grafikk
- Trigonometri og vektoralgebra
- Lineære transformasjoner for 3d
- Komplekse tall og kvaternioner

Introduksjon til funksjonell programmering
- Begreper i funksjonell programmering
- Introduksjon til funksjonell programmering i C++
- Late data strukturer i C++
- Automatisk derivering

Et utvalg andvendelser
- Implementasjon av A*-algoritmen for veisøk
- Støy og prosedural generering
- Flokkbevegelse

Mechanics for games/applications
- Differentiation and integration
- Newtons mekanikk
- Numerisk løsning av bevegelseslikninger 
- Elastiske og ikke-elastiske kollisjoner
- Invertert kinematikk
- Partikkelsystemer

Læringsmål

Etter fullført kurs så skal studentene ha
kunnskaper om:
- Andvendelser av matematisk logikk i programmering
- Algoritmer for veisøk
- Funksjonell programmering
- Elementær mekanikk for spill/applikasjonser
- Rollen til matematikk i programutvikling

Ferdigheter i:
- Logisk og funksjonell programmering 
- Lage løsninger for veisøk
- Lage modeller og utføre analyser med bruk av Markov-kjeder
- Overføre matematiske beskrivelser til programkode

Generell kompetanse i:
- Generell logisk og matematisk resonnering
- Problemløsning og beskrivelser av løsninger
- Generell programmeringsevne
- Skriftlig og muntlig kommunikasjon på engelsk

Læringsformer og aktiviteter

Forelesninger|Oppgaveløsning

Inntil 5 obligatoriske innleveringer