DM857: Introduction to programming
Study Board for Natural Scientific IT Programmes
Teaching language: Danish or English depending on the teacher, but English if international students are enrolled
EKA: N340105102
Assessment: Second examiner: Internal
Grading: 7-point grading scale
Offered in: Odense
Offered in: Autumn
Level: Master
STADS ID (UVA): N340105101
ECTS value: 10
Date of Approval: 11-04-2025
Duration: 1 semester
Version: Approved - active
Internal Course Code
Comment
Entry requirements
The course can not be taken by students enrolled in the master programme in computer science.
The course cannot be followed if the student has passed DM574, DM536, DM550, DM562, DS800, DS801, DS830, or MM560, or if the student has DM574, DM536, DM550, DM562, DS800, DS801, DS830 or MM560 mandatory in their curriculum.
Academic preconditions
Course introduction
The course provides an academic basis for solving problems by modelling and implementing computer programs.
Provides the students with the necessary prerequisites for several topics of other courses, in particular DM847, DM868 and BMB834, that appear later in the degree
Expected learning outcome
The learning objectives of the course are that the student demonstrates the ability to:
- design models for concrete problems;
- devise a program structure based on the model;
- implement the planned program in the concrete programming language used;
- find and use adequate elements in the program library belonging to the language;
- plan and execute a testing of the program;
- design and implement recursive solutions of problems;
- design and implement abstract data types;
- use basic tree structures and algorithms for these.
Content
The following main topics are contained in the course:
- The basic structuring tools sequence, repetition, conditional instruction and subprogram.
- Fundamental data structures such as lists, maps, and trees.
- Structured programming techniques, including examples and applications.
- Recursion and recursive data structures.
- Examples of abstract data types and their realization.
The course is taught in Python.
Literature
Examination regulations
Exam element a)
Timing
Autumn and January
Tests
Project with oral defense
EKA
N340105102
Assessment
Second examiner: Internal
Grading
7-point grading scale
Identification
Full name and SDU username
Language
Normally, the same as teaching language
Examination aids
All common aids allowed
ECTS value
10
Additional information
The exam consists of a group project and report of no more than 10 pages, followed by a group presentation of the project and a short individual oral exam after the joint presentation.
Indicative number of lessons
Teaching Method
Planned lessons:
Total number of planned lessons: 66
Hereof:
Common lessons in classroom/auditorium: 56
Common lessons in laboratory: 10
An introduction to new material and topics, which in the skills training phase are processed with exercises prepared at home and discussed in class to validate the acquired knowledge.
Exercises is divided into tutorials and labs, where students learn the competencies that enable them to translate their knowledge into a solution and subsequently into concrete computer programs.
Other planned teaching activities:
Programming of small assignments and projects. Students work independently to increase their understanding and their competencies regarding the content of the subject.
Teacher responsible
Timetable
Administrative Unit
Team at Registration
Offered in
Recommended course of study
Transition rules
Transitional arrangements describe how a course replaces another course when changes are made to the course of study.
If a transitional arrangement has been made for a course, it will be stated in the list.
See transitional arrangements for all courses at the Faculty of Science.