CIS200 lecture notes

CIS200 Lecture Notes: Introduction to Software Development Using Python

Week 1

Chapter 0A: Introduction to computing

Week 2

Chapter 0B: Computer hardware and operating systems
Chapter 1: Introduction to the Python programming language
Optional: Dawson, Chapter 1

Week 3

Chapter 2: Arithmetic, variables, and input-output
Chapter 3A: Conditional control
Optional: Dawson, Chapter 2 and the first half of Chapter 3
The demo programs that compute square roots:

Week 4

Chapter 3B: Iterative control
A repetitive version of the coin-flip game:
Chapter 4: Computing with strings (Sections 4.1-4.4 only)
Optional: Dawson, the second half of Chapter 3 and the first half of Chapter 4


Examples from the lectures:

Week 6

Chapter 5: List data structures (Sections 5.1-5.3, 5.5, 5.6 only)
Optional: Dawson, the first half of Chapter 5
Examples from lecture:

Week 7

Examples from lecture:
Chapter 6A: Small pieces: functions
Optional: the first half of Dawson, Chapter 6
The ATM examples: | | and (You must download and use these together in the same folder.)

Week 8

A series of examples that show how to introduce functions while refining an algorithm into a program --- a tic-tac-toe-like game: | | | | |
Chapter 6B: Big pieces: modules
Optional: the second half of Dawson, Chapter 6

Week 9 (spring-break week)

Chapter 7: How to read and write text files (This is for your information and is not required reading. It matches Dawson's book, Chapter 7.)

Week 10

Chapter 8: Objects for GUIs and animations
Optional: Dawson, Chapters 9-12
Note: A good reference to Tkinter is found at
The telephone book example: | |

Week 11

GUI examples from lecture:
A three-button counter written with copy-and-paste:
How to use a function to manufacture customized functions:
A generalized counter GUI using the previous technique:
How to collect the addresses of button objects and reset all the buttons:
How to use a class to generate controller objects that hold the event-handling functions: |, a zipped folder that contains all the examples listed here.

Week 12

A slide puzzle built with controller objects constructed from a controller class: |, a zipped folder that contains the previous three modules.

Week 13

Chapter 99: Programming with C#
Examples: Reciprocal.cs | ReciprocalEx.cs | Votes.cs | SlidePuzzle.cs
A zip file that holds the examples:

Week 14

Examples of clocks:
Clock.cs (compile with the command, csc /debug+ /t:library Clock.cs)
TestClock.cs (compile with the command, csc /debug+ /R:Clock.dll TestClock.cs)
ThreeClocks.cs (compile with the command, csc /debug+ /R:Clock.dll /t:library ThreeClocks.cs)
StartClocks.cs (compile with the command, csc /debug+ /R:ThreeClocks.dll StartClocks.cs) a zipped folder holding these files.

Week 15

Exam 3 review

Summary of Python Language Features

Creative Commons License This work is licensed under a Creative Commons License.