This document provides an overview of a complete program design course that teaches programming, program design, and algorithms using pseudocode. The course assumes no prior knowledge and aims to teach fundamental programming concepts like procedural programming, good program design practices, and elementary algorithms and data structures.
The learning outcomes include being able to design and write basic programs in a structured procedural language, use development tools to compile and run code, divide programs into modules, test programs, and implement basic algorithms and data structures.
The indicative syllabus covers topics like basic data types, input/output, programming structures like conditionals and loops, functions, arrays, sorting algorithms, testing, debugging, and documentation. Assessment includes a written exam and continuous assessment.