Links to the chapters from the required reading for the CST 1101 topics. In addition to the reading materials listed below check the lecture notes provided by the instructor.
- Topic 1:
- Introduction
- What is problem solving?
- Why Python?
- Why Flowcharts?
- Computer problem solving:
- Solution = program / algorithm
- Well-defined set of steps
- Examples of problems solved using sets of steps: cooking recipes, puzzles
- Required reading:
- Introduction
- (Strongly) Recommended reading:
- Topic 2:
- IDLE introduction, installation tips
- My first “Hello, World” program
- Code readability and comments, Introduction of two modes for Python IDLE (interactive and shell).
- Saving Python scripts and flowcharts. How saved scripts and flowcharts can be called and run/executed.
- Required reading:
- (Strongly) Recommended reading:
- Topic 3:
- Variables, types, and data input/output
- Required reading:
- Section 1.5 (Values types).
- Chapter 2 (Variables, expressions and statements.
- Section 5.1 (Floor division and modulus): pay attention to the distinction between integer and float numbers
- Section 7.1 (Reassignment)
- Section 7.2 (Updating variables)
- Flowgarithm Data Types
- Flowgarithm identifiers
- Flowgarithm Variable Declaration
- Flowgarithm input
- Flowgarithm output
- Exercises
- (Strongly) Recommended reading:
- Topic 4:
- Boolean logic
- Boolean operations: and, or, not
- Conditional execution (if-else)
- Required reading:
- (Strongly) Recommended reading:
- Topic 5:
- Functions
- Why creating modules within a program?
- Void functions VS fruitful functions
- Passing input parameters and arguments
- Function return value
- Required reading:
- Section 3.1 (Function calls).
- Section 3.4 (Adding new functions).
- Section 3.5 (Definitions and uses).
- Section 3.6 (Flow of execution).
- Section 3.7 (Parameters and arguments).
- Section 3.8 (Variables and parameters are local).
- Section 3.10 (Fruitful functions and void functions).
- Section 3.11 (Why functions?).
- Section 3.12 (Debugging).
- Section 5.8 (Recursion).
- Chapter 6 (Fruitful functions), except Section 6.5.
- Section 4.9 (docstring documentation).
- Section 3.13 (Glossary).
- Flowgarithm CALL functions
- (Strongly) Recommended reading:
- Topic 6:
- While loop
- Condition controlled loop
- Required reading:
- (Strongly) Recommended reading:
- Topic 7:
- Lists and arrays
- Required reading:
- (Strongly) Recommended reading:
- Topic 8:
- For loop
- For vs While loop
- Importing modules
- Required reading:
- (Strongly) Recommended reading:
- Topic 9:
- String as a special case of a list
- Strings and iteration
- Files
- Required reading:
- (Strongly) Recommended reading:
- Topic 10:
- Introduction of the OOP paradigm
- Required reading:
- (Strongly) Recommended reading:
- Topic 11:
- Turtle graphics
- Required reading:
- (Strongly) Recommended reading: