This module is an introduction to programming, program design and algorithms. Students are introduced to a modern programming language and to commonly used algorithms and their implementation.
This module assumes no prior knowledge of programming or algorithms.
The aims of this module are to:
-
Teach the fundamentals of programming
-
Teach the principles of good program design, implementation, documentation and testing.
Teach the theory and application of elementary algorithms and data structures.
-
Introduction: What is a program? Source code. Machine code. Editing, Compiling, Linking Debugging. Use of an Integrated Development Environment (IDE).
-
Basic Data Types: integer, floating-point and character data and variables.
-
Basic Input-Output: Display data on a screen. Input data from the keyboard.
-
Programming Structures: Conditional statements: Boolean values and expressions, logical and relational operators, if-statement, case-statement, compound conditional statements.
-
Iterative constructs: while-statements, for-statements and nested control statements.
-
Structured Programming: functions, parameter passing, returning values.
-
Introduction to Data Structures: single-dimensional arrays, two-dimensional arrays, dynamically allocated arrays,
-
Basic Algorithms: summation, counting, numeric operations, swapping, maximum and minimum, simple array manipulation.
-
Elementary Sorting Algorithms: Internal Sorting. Exchange sort. Interchange sort. Bubble sort. Shaker sort. Insertion sort.
-
Testing and debugging: Objectives and principles of testing. Choosing appropriate test data. Simple debugging using a program trace.
-
Documentation: Style guidelines.
This module can be delivered either through standard delivery or blended delivery.
In standard delivery this module is delivered through a series of lectures with associated practical assignments.
In blended delivery this module is delivered through a series of live and recorded lectures with associated laboratory work and practical assignments.
Both blended and standard delivery have the same overall number of teaching and self-directed learning hours.
| Module Content & Assessment | |
|---|---|
| Assessment Breakdown | % |
| Formal Examination | 70 |
| Other Assessment(s) | 30 |