Objectives
This course introduces the fundamental concepts of problem-solving by programming. Topics covered include problem-solving by computing, writing pseudo-codes, and basic problem formulation. Students will develop programs, test and debug their programs, learn fundamental programming constructs (variables, types, expressions, assignments, functions, control structures, etc.), fundamental data structures: arrays, strings and structures, simple file processing, and basic recursion. Students will be introduced to the object-oriented programming paradigm as a powerful way of composing reusable components to form larger, more complex, programmes.
