DS830: Introduction to programming
Internal Course Code
Comment
Entry requirements
The course cannot be taken by students enrolled in the master programme in computer science. The course cannot be followed if the student has passed DM574, DM550, DM562, DM536, DM857, DS831, DS801 or MM560, or has it mandatory in their curriculum.
Academic preconditions
Course introduction
Expected learning outcome
- 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 basic structuring tools sequence, repetition, conditional instruction and procedure.
- 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
Tests
Project with oral defense
EKA
Assessment
Grading
Identification
Language
Examination aids
ECTS value
Additional information
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.
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. The students work independently to increase their understanding and their competencies regarding the content of the subject.