Course - Mathematics for Programming - REA1121
Mathematics for Programming
About
About the course
Course content
Logic
- Logic puzzles
- Solving logic puzzles by programming
- Bitwise logic
Probability
- Elementary probability and enumeration
- Conditional probability
- Random variables
- Modelling using Markov chains
- Expectation and variance
- Programming simulations
Mathematics for 3d-graphics
- Trigonometry and vector algebra
- Linear transformations in 3d
- Complex numbers and quaternions
Introduction to Functional Programming
- Functional programming concepts
- Introduction to functional programming in C++
- Lazy data structures in C++
- Automatic differentiation
A selection of applications
- Implementation of the A*-algorithm for pathfinding
- Noise and procedural generation
- Flocking behaviour
Mechanics for games/applications
- Differentiation and integration
- Newtonian mechanics
- Numerical solution of the equations of motion
- Elastic and inelastic collisions
- Inverse kinematics
- Particle systems
Learning outcome
After completing the subject the students should have knowledge of:
- Applications of mathematical logic in programming
- Algorithms for pathfinding
- Functional programming
- Elementary mechanics for games/applications
- The role of mathematics in software development
Skills in:
- Programming in logic and functional paradigms
- Creating pathfinding solutions
- Constructing and analysing Markov Chain models
- Turning mathematical descriptions into programming code
General competence of:
- General logical and mathematical reasoning
- Problems solving and rigorous descriptions of solutions
- General programming ability
- Communication in written and spoken English
Learning methods and activities
Lectures, assignments
Up to 5 compulsory assignments
Compulsory assignments
- Obligatoriske arbeidskrav
Further on evaluation
Re-sit of written exam in August.
Specific conditions
Admission to a programme of study is required:
Bachelor of Game Programming (BSP)
Computer Science (ÅRINF)
IT Operations and Information Security (BITSEC)
Programming (BPROG)
Recommended previous knowledge
REA1101 Mathematics for computer science
Course materials
Handouts and internet resources.
Contact information
Course coordinator
Department with academic responsibility
Examination
Examination
Ordinary examination - Spring 2019
Written examination
The specified room can be changed and the final location will be ready no later than 3 days before the exam. You can find your room location on Studentweb.