COS 101 Problem Solving, Algorithms and Programming (30 credits)
[Co-requisites: Computer Literacy module (COS114 or COS124) and 1st Year Mathematics, EED]
Main Content:
- Problem solving, algorithm design, trace tables, constructs;
- Abstraction;
- Pseudocode;
- Structured diagramming techniques (top-down design);
- Arrays and data structures;
- Development and application of simple algorithms;
- High level programming language fundamentals;
- Basic data types and methods;
- The Software Development Life Cycle;
- Design tools and object oriented design;
- Inter-modular communication: Parameter passing and variable scope;
- Objects as parameters;
- Introduction to inheritance;
- Data modeling, File I/O and recursion.
Main Outcomes:
At the successful completion of this course the student should have:
- The ability to read, understand and solve problems;
- Problem solving techniques and improved analytical thinking;
- An understanding of sequence, selection and repetition control structures;
- Ability to design an algorithm to solve a given problem;
- Express an algorithm in pseudocode / structured diagram;
- Implementation of algorithms in a high-level programming language (e.g.Java);
- An understanding of the Software Development Cycle;
- Parameter passing and the use of arrays;
- Understand and implement the Object Oriented (OO) paradigm and inheritance;
- Design and present a team project.