CSCI201: Computer Programming I

Updated 2020-10-15

Syllabus Textbook Python videos Python documentation List cheat sheet

Link to first github assignment:


Online Python editor. NOTE: If you use turtle graphics, you do not need any window commands. If you use this, copy/paste your code into a Word or Notepad (preferred) file and hand it in.

Monday (ONLINE)

Tuesday (IN PERSON)

Wednesday (ONLINE)

Thursday (IN PERSON)

Sep 21

Data types, input, output

Sep 22

Chapter 3: Selection

Sep 23

Turtles, loops

Sep 24

Turtles, ifs, loops

Sep 28

Chapter 4: Functions

Sep 29

Test 1

Sep 30

For loops

Oct 1

Loops, strings

Oct 5


Oct 6

Strings, Lists


Zoom link

Oct 8

Test 2


See video links

Oct 13


See video links

Oct 15

Test 3

Skipped in 2019: Recursion assignment, Classes

Homework due Thursday

Software used in this class

         Required: Anaconda. Choose Python 3.8, 64-bit graphical installer for your computer (there is a Windows version and a Mac version).

         Optional: An online Python interpreter

Python resources:


         Chapter on Turtle graphics (not part of our textbook)

         Video playlist for textbook

Class #1-2. Day 1. Monday, 9/21:Data, input, output

         How to become a superstar

         Beginning Python: notes

Homework due tomorrow:

         Read, print, and sign the Attendance, Test, and Homework Policies.

         Read chapter 2 of our textbook. Be prepared for a quiz.

         Watch videos from our playlist. 10-18 (90 minutes).

         Program #1A: payroll. We will do this in class.

         Program #1B: store discount.

         Program #2A: cookies.

         Program #2B: shipping.

Class #3-4: Day 2. Tuesday, 9/22: Chapter 3: Making decisions

         Notes. More notes.

Homework due tomorrow:

         Program #2C: sales quota.

         Program #2D: college admissions.

         Program #2E: covid.

         Read Runestone chapter 3: Errors.

         Read Runestone chapter 4: Turtle graphics and the for loop.

Class #5-6. Day 3. Wednesday, 9/23: Turtle graphics, Repetition (loops)

         Video of today's lecture

         Turtle graphics. Notes. Examples.

         More loops, more turtle graphics. Notes.

         Draw the following: triangle, square, pentagon, polygon, flower of polygons, spiral of polygons

         Web site for Python turtle graphics (if you have problems on your computer)

Homework due tomorrow:

         Program #2F: Car rental.

         Program #3A: Stars

         Program #3B: Spirals

         No new reading, but re-read the turtle graphics chapter.

Class #7-8. Day 4. Thursday, 9/24: Turtles, selection, repetition

         Test will be Tuesday, not Monday.

         Covid homework program, car rental program.

         Some programs to write today.

         Colors in rainbow order (kind of)

         Cycling through colors using the % operator (colored spiral)

Homework due Monday, 9/28:

         Read chapter 4: functions. Watch the chapter 4 videos.

         Program #4: Write a snowflake program.

Day 5. Monday, 9/28/2020: Functions

         Writing functions. Notes.

         Functions to write.

Homework for tomorrow:

         Study for test. Practice test. Code solution. Videos:#1, #2, #3, #4, #5

Day 6. Tuesday, 9/29/2020: Test#1

Day 7. Wednesday, 9/30/2020: Loops

         Loops: Notes.

         More loops: nested loops. Notes.

Homework due tomorrow:

         Read chapters 5 (iterations) and 6 (strings). There will be a quiz next class.

         7A Loops: compound interest. You may work with up to 2 other people on this. Just put one copy in the drop box with all three names in the comments.

         7B Loops & functions: income tax You may work with up to 2 other people on this. Just put one copy in the drop box with all three names in the comments.

Day 8. Thursday, 10/01/2020: Strings

         Indefinite (while) loops. Notes.

         Strings: Notes.

Homework due Monday, 10/5

         8A: Strings & functions: email

         8B: Strings & loops: count letters

Day 9. Monday, 10/5: Strings

         Quick guide: Strings.

         More strings. Exercises.

         Discuss Caesar Cipher program.

Homework due Tuesday, 10/6:

         9A: Strings & functions: Password validator

         9B: Strings & functions: Caesar cipher.

         Read Chapters 7 (Files) & 8 (Lists) and/or watch the videos.

Day 10. Tuesday, 10/6: Strings, functions, lists

         Intro to lists. Notes.

         More string functions. Exercises.

Homework due Wednesday, 10/7:

         Hangman. Words file. Copy the words file to the same folder as your .py file. get_word function.

Day 11. Wednesday, 10/7: Lists

         Intro to lists, continued. Notes.

         Quick guides: Lists, Strings, Turtle graphics.

Test is tomorrow:

         Practice test, solution, videos: problem 1, problem 2, problem 3, problem 4

Homework due Monday, 10/12/2020

         Program 11A: List algorithms

         Program 11B: World Series winners. Data file. Function to read the World Series winners.

Day 12. Thursday, 10/8: Test

         Test shell

Day 13. Monday, 10/8: Lists and Files

         Files. Notes.

         Video 1. Overview & quarterbacks problem. QB stats file

         Sample files problem (stocks): Video 2. Stocks description. Stocks file.

Homework due tomorrow Wednesday at 12:30:

         Program 13A. World Series winners, version 2. Data file.

         Program 13B: Computing homework averages. Data file.

Day 14. Tuesday, 10/8: Dictionaries

         Dictionaries. Notes. Video 1.

         Sample problems.

Homework due Thursday at 12:30

         Program 14A: World Series winners, version 3. Data file.

Day 15. Wednesday, 10/8: Image manipulation

         Image manipulation: Removing color video, negatives & sepia video

         Practice test. Video solution.

Day 16. Thursday, 10/8: Test

         Test. Program shell. Data file.

         Homework solutions

Class #19.

Class #20:


Class #21. Files, selection

Homework due next Tuesday (after the test):

Class #22:

Class #23.


Class #24.


Class #25.


Class #26.


Class #27.

Class #28.

Class #29.

Class #28.


Class #28. Thursday, 12/05/2019

Final Test

Class #27 & 28. Tuesday, 12/03/2019 and Thursday, 12/05/2019



Class #14. Tuesday, 10/13/2020. IMAGES, part 1



Class #15. Wednesday, 10/14/2020. IMAGES, part 2



Class #16. Thursday, 10/15/2020. Final Test