|Delivery length / details
|10 x 2 Hour Practicals
|22 x 1 Hour Lectures
|Assessment length / details
|Submission of a portfolio
|2 Hours Written exam
|Equivalent of a Portfolio Note - Students must resit failed examination and/or resubmission of failed/non-submitted coursework components or ones of equivalent value.
|2 Hours Written Exam
On successful completion of this module students should be able to:
1. convert integers and rational numbers into binary representations and discuss properties of the different formats
2. manipulate logical expressions, write truth tables, discriminate between valid and invalid reasoning
3. implement simple searches and sorts
4. analyse simple algorithms and sorts and compare their efficiency
5. perform matrix operations using 2 dimensional arrays
6. be able to implement simple recursive algorithms
7. describe the concept of computability and give an example of a non-computable problem
8. describe an important algorithm that has significant real-world impact
This module aims to introduce some of the mathematical fundamentals of computing in an engaging and practical way. Building on CS12020 Introduction to Programming it uses C as programming language.
This module will build on CS12020 Introduction to Programming. It reviews fundamental mathematical concepts and illustrates how those concepts are implemented in computing contexts. Topics covered include representation of numbers, fundamental Boolean logic, analysis of algorithms, searching and sorting, matrix operations, recursion and computability.
1. Fundamentals of Computing (representing numbers (integers, floating point), Boolean logic)
2. Analysing algorithm complexity (asymptotic notation, worst, best and average case; searching in a sorted array (linear, binary), sorting)
3. Matrices and arrays (2D arrays, matrix addition and multiplication)
4. Recursion (binary search, sorting)
6. CS Highlights (e.g., data compression, PageRank)
|Application of Number
|Understanding and implementing binary representations of numbers is inherent to this module.
|Developed in the creation of a portfolio.
|Improving own Learning and Performance
|Computers will be used to implement algorithms to solve fundamental algorithmic problems.
|Personal Development and Career planning
|Developed practically, solving coding problems.
|Subject Specific Skills
This module is at CQFW Level 4