Undergraduate Handbook 2026-2027
Module MATH1587: Programming I
Department: Mathematical Sciences
MATH1587: Programming I
| Type | Level | Credits | Availability | Module Cap | Location |
|---|---|---|---|---|---|
| Open | 1 | 10 | Available in 2026/2027 | None. | Durham |
Pre-requisites
- Normally grade A in A-Level Mathematics (or equivalent).
Corequisites
- Calculus I (Maths Hons) (MATH1081) and Linear Algebra I (Maths Hons) (MATH1091) OR Calculus I (MATH 1061) and Linear Algebra I (MATH 1071) .
Excluded Combinations
- Maths for Engineers and Scientists (MATH1551), Single Mathematics A (MATH1561), Single Mathematics B (MATH1571), Computational Thinking (COMP1051)
Aims
- Basic principles and basic competence in computer programming.
Content
- Programming: basic types (numerics), operators, variables and assignment.
- Control structures: conditionals, loops and functions.
- Floating-point arithmetic.
- Lists, strings and introduction to objects.
Learning Outcomes
Subject-specific Knowledge
- The ability to: precisely formulate mathematical problems,
- develop algorithms to solve them,
- implement the algorithm as a Python program.
Subject-specific Skills
- students will have basic mathematical skills in the following areas: Modelling and computer programming.
Key Skills
- students will have an understanding of the principle of computational algorithms, and basic programming skills for mathematical applications.
Modes of Teaching, Learning and Assessment and how these contribute to the learning outcomes of the module
- Lectures introduce the basic concepts.
- Practical sessions develop and practice programming skills, and provide active engagement and feedback to the learning process.
- Weekly in-class programming quizzes to guide students in the correct development of their knowledge and skills. They are also an aid in developing students' awareness of standards required.
- Take-home assignments partially assess overall achievement.
Teaching Methods and Learning Hours
| Activity | Number | Frequency | Duration | Total Hours | Attendance Monitored |
|---|---|---|---|---|---|
| Lectures | 10 | 1 per week | 1 Hour | 10 | |
| Practicals | 10 | One per week in Michaelmas Term | 2 Hours | 20 | Yes |
| Preparation and Reading | 70 | ||||
| Total | 100 | ||||
Summative Assessment
| Component | Component Weighting | Element | Length/Duration | Element Weighting | Resit Opportunity |
|---|---|---|---|---|---|
| Continuous assessment for programming | 100% | Assignment | 2 take-home assignments | 67% | Extended set of further problems |
| In-Year Test | 33% | Extended set of further problems |
Formative Assessment
In the computer practicals examples will be given and direct oral feedback will be given on students' work.
Students who do not attend monitored activities shown under Teaching Methods
and Learning Hours, or who fail to complete the summative or formative
assessment(s) specified above, may be subject to the Academic Progress
procedures defined in the University's General Regulation V, and may be
required to leave the University.