This is an archived handbook for a previous year. The current undergraduate and postgraduate handbooks can be viewed using the links above.
Undergraduate Handbook 2025-2026 (archived)
Module MATH1587: Programming I
Department: Mathematical Sciences
MATH1587: Programming I
| Type | Level | Credits | Availability | Module Cap | Location |
|---|---|---|---|---|---|
| Open | 1 | 10 | Available in 2025/2026 | 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 homework problems provide formative assessment to guide students in the correct development of their knowledge and skills. They are also an aid in developing students' awareness of standards required.
- A computer-based examination partially assesses 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% | Computer project coursework | 67% | Extended set of further problems | |
| Weekly programming assessments | 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.