• CMPU1026
  • Programming & Algorithms 1

  • Credits (ECTS): 10
  • Computing

Modules are delivered
as part of a programme.
To apply for the
programme,
see the DIT website

Module Description

This module is an introduction to programming, program design and algorithms. Students are introduced to a structured procedural programming language and to commonly used algorithms and their implementation. This module assumes no prior knowledge of programming or algorithms.

Module Aims

The aims of this module are to teach the fundamentals of procedural programming also teach the principles of good program design, implementation, documentation and testing and finally teach the theory and application of elementary algorithms and data structures.

Indicative Syllabus

1. Introduction: What is a program? Source code. Machine code. Editing, Compiling, Linking Debugging. Use of an Integrated Development Environment (IDE).
2. Basic Data Types: integer, floating-point and character data and variables.
3. Basic Input-Output: Display data on a screen. Input data from the keyboard.
4. Programming Structures: Conditional statements: Boolean values and expressions, logical and relational operators, if-statement, case-statement, compound conditional statements.
5. Iterative constructs: while-statements, for-statements and nested control statements.
6. Structured Programming: functions, parameter passing, returning values.
7. Introduction to Data Structures: single-dimensional arrays, two-dimensional arrays, dynamically allocated arrays
8. Basic Algorithms: summation, counting, numeric operations, swapping, maximum and minimum, simple array manipulation.
9. Elementary Sorting Algorithms: Internal Sorting. Exchange sort. Interchange sort. Bubble sort. Shaker sort. Insertion sort.
10. Testing and debugging: Objectives and principles of testing. Choosing appropriate test data. Simple debugging using a program trace.
11. Documentation: Style guidelines.

Total Contact Teaching Hours:39

Please note that the catalogue is provided as a guide to modules in DIT. Not all modules listed will necessarily be offered every year and new modules may also be added. Information subject to change. For detail on specific programmes/modules please contact the relevant School directly.