Introduction to Programming for Engineers





Offered by

ICT Engineering




Basics in algebra, calculus, probability, and statistics. Prior programming experience is not required.

Main purpose

​The long-term goal of this course is to provide participants with a solid understanding of the thinking and methods behind programming and IT technologies, often labelled “computational thinking".

The short-term aim of the course is to enable the participant to use programming to solve a wide range of common place engineering task with special emphasis on data analysis.

The course also gives the academic basis for studying Machine Learning and A.I. The course is aimed at people who have not previously worked with programming.


Account for the following basic programming concepts:
- data types
- operators
- variables
- control structure
- conditions
- loops
- functions
- recursion
- exceptions
- inheritance

Demonstrate knowledge about the following basic algorithmic techniques:
- Sorting
- binary search

Additionally, the student will be able choose an appropriate method for
- file-based input/output
- testing and debugging


- Use basic programming concepts and simple algorithmic techniques
- Prepare an engineering problem into sequences that can be transferred to code
- Prepare simple programs and applications that can automate engineering tasks
- Use standard libraries for engineering purposes


- Create well-structured programs and perform testing of these
- Create programs and scripts for solving engineering problems


Teaching methods and study activities

The mode of teaching will be classroom based and will involve short lectures by the teacher followed by practical exercises made in class. The students are also expected to work on the practical exercises both before and after classes. Emphasis is placed on practical programming. The total work-load for the student is expected be around 130 hours.


The student must install Python version 3.7 or greater and be able to work in the Jupyter environment. The student is also welcome to get acquainted with Google Colab.



Prerequisites for exam:
The student must prepare 6 small individual programming assignment during the semester. These will make up their portfolio. In addition to this, the course concludes with a larger group project. Both the portfolio and the final group project will be the basis of the exam.

Exam type:
A 30 minutes individual oral exam. In the first part of the exam, the student will pick one of the assignments from the portfolio and discuss this assignment. The second part of the exam will depart from the group project. The exam is placed during the exam period in January.

Tools allowed:
All allowed for the project and the small individual assignments. At the exam, the student is expected to show their programs which means they must bring a working laptop that is able to display and run their code.

If the portfolio or group project are deficient, the student(s) will have to make the necessary adjustments based on input from the teacher. An oral examination will then follow.

Grading criteria

​Grading based on the Danish 7-point scale.

Additional information


Richard Brooks

Valid from

01-02-2023 00:00:00

Course type

6. semester
7. semester
Elective for Mechanical Engineering


Python, programming, Scripting, Data Analysis