← Teaching

Introduction to Structured Programming Y1, 40cr

Overview

This unit introduces students to the theory and practice of writing computer programs. No previous knowledge of programming is assumed. Techniques of program design are taught alongside the Python programming language.

Aims

  1. To develop an understanding of program design with emphasis on algorithms and readability.
  2. To enhance problem solving skills.
  3. To establish the principles of sound programming practice.
  4. To provide a foundation for learning further programming techniques and languages.

Learning Outcomes

  1. Design algorithms to solve problems using appropriate data types and control structures.
  2. Design, implement and test program designs based on a supplied specification.
  3. Understand and apply the principles of writing high quality program code.

Syllabus

  1. Solutions as algorithms.
  2. The program development lifecycle.
  3. Fundamental data types and operations: numeric, character-based and boolean.
  4. Program modularity: the use of functions.
  5. Control structures: decisions and loops.
  6. Program design considerations.
  7. Data collections: lists.
  8. Algorithm design and recursion.