|General Course Information||Course Content||Required Background||Software|
|Textbooks||Required Work||Grading||Detailed Course Schedule|
My colleague Bob Muller calls this
policy the 'laptop-free classroom'. (For 'laptop', read
'laptop and smartphone'.)
A successful class requires your
attention, engagement, and participation. You need
to be prepared to ask and answer questions during the
lectures, and to attend to the questions and answers of
your fellow students and of the instructor. That
screen open to your e-mail or Facebook page distracts not
only you, but the students sitting behind you. For this
reason, open laptops are not
permitted in the classroom, unless they are part of
some planned activity for which your computer is required.
You say you're taking notes on
that laptop instead of shopping on Amazon? You should be
aware that (a) it is very difficult to take notes for this
class on a computer, given the large number of special
symbols and diagrams that we use; and (b) taking
notes by hand is better for you. It is
acceptable to take notes on a tablet computer with a
||Handouts and Lecture Notes
||Lab Exercises from the Discussion
||Python in interactive
Types, constants, operators, expressions, variables, assignment.
|An annotated interactive
session with Python
Notes to accompany Assignment 0.
The first two test programs:
Due 11:59 PM, August 30.
Install the software, and revise the two sample programs.
|August 30-September 4
||Writing simple functions
The wind chill program, first version (DON'T write programs this way.)
The wind chill program, second version.
(Write them this way.)
Notes on structure of Python programs; how function calls work, etc.
section problem for the week of September 4.
|Assignment 1, Due
11:59 PM, September 6.
Templates for the programs in the assignment.
||No class (Mass of the
conditional statements (if and its relatives)
||Notes on boolean
Example:Solving a quadratic equation
Example: Solving a quadratic equation (again)
Example: A fancy version of the calendar program that checks for valid input and prints nice output.
Example: A diagnostic decision tree, and an implementation, done two different ways.
section exercise for the week of September 10.
|Assignment 2, Due
11:59 PM, September 18
Download a 'compiled' version of the college admission program so you can see what it is supposed to do--see instructions.
| Some loop basics (lots
of short functions demonstrating while and for
Some nested loops.
Random number generation, and a program that plays the casino game craps.
section exercises for the week of September 17.
|Assignment 3, due
11:59 PM, September 25.
Code to accompany Assignment 3.
The file wordslist1000.txt
||Some basic string
Writing numbers in English
section exercises for the week of September 24
|Assignment 4, due
11:59PM, October 4
||Making GUIs, review
||Notes on creating
A minimal application with two buttons.
Jack and Jill
Calculate area of a triangle (again)
Draw a checkerboard
Draw 281,474,976,710,656 different checkerboards.
section exercises for October 1
exercises (from an old midterm)
midterm with solutions and results.
||A GUI problem for extra credit.|
||Notes on lists
The calendar program simplified even further.
Tabulating dice statistics.
15-16 Discussion section exercise
The Scrabble tournament word list
||Sorting and Searching
A look a recursion
|October 30-November 1
Binary and hex. Image processing.
||Tuples and dictionaries.
(No class November 22.)
|November 27-December 4