CSCI201: Computer Programming I

Updated 2019-10-22

Syllabus      Textbook       Finals Schedule       Academic Calendar       Python videos      Python 3.7.3 documentation      List cheat sheet

Final test is Thursday, 12/12/2019 from 12:30 (but you can start at noon if you want to) until 2:20 in HH112. DO NOT PLAN TO LEAVE CAMPUS BEFORE THE TEST.

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.

Day #17. Tuesday, 10/22/2019. Lists

·         Jobs in IT. Guest speaker from Interstates.

·         More strings/lists.

·         Discuss Caesar Cypher program.

Homework due next class:

·         Program #15: Caesar Cypher.

·         Read Chapter 10.6-10.14. Expect a quiz


Earlier classes are below…













Day #16. Thursday, 10/17/2019. More strings

·         Common integer algorithms.

·         More hangman: how to print the hangman; hangman=" | \n O \n/|\\\n/ \\\n"

·         More hangman: how to print the clue

·         More strings. Exercises.

Homework due next class:

·         Program #14: Complete the exercises we began in class.

·         Read chapter 10.1-10.5 (intro to lists). Expect a quiz.

Day #15. Tuesday, 10/15/2019. More strings

·         Here is a summary of the string methods.

·         Here is a summary of the built-in functions we have seen so far.

·         More strings (chapter 9). Notes.

Homework due next class:

·         Program #13: Write program #3 (password validator from the Notes link above).

Thursday, 10/10/2019. No class: fall break.

Day #14. Tuesday, 10/08/2019

·         Strings (chapter 9). Notes.

Homework due Tuesday, 10/15/2019 (there is no class this Thursday—Fall break)

·         Program #12: Write a program that plays a simplified version of the Hangman game. Instructions. Words file.

Thursday, 10/03/2019. No class.

Day #13. Tuesday, 10/01/2019

·         Indefinite loops. Notes.

Homework due Tuesday, 10/08/2019 (there is no class Thursday)

·         Read chapters 8 and 9. There will be a quiz next class.

·         Program #11: Write a program to determine the student with the highest test score. Instructions.

Day #12. Thursday, 9/26/2019

·         Test shell. Copy and paste into your editor.

Day #11. Tuesday, 9/24/2019

·         Steganography: Can you find the hidden picture here? tulips. family

·         How to hide a picture

Homework due next class:

·         No programming assignment. Study for first test. Practice Test. Solution. Video solution, part 1. Video solution, part 2.

Day #10. Thursday, 9/19/2019.

·         More image algorithms: reverse, blur. Notes. Tulips.

Homework due next class:

·         Program #10: Write the flip program described in the Notes link above (left to right, not top to bottom).

Day #9. Tuesday, 9/17/2019.

·         Test will probably be next Thursday

·         Today: more image algorithms. Notes. Pic.

·         Some hidden pics: pic, pic

Homework due next class:

·         Program #9. Add a black border to a pic. Here's a pic. Put it in the same folder as your program.

Day #12. Thursday, 9/26/2019

·         Test #1.


Day #8. Thursday, 9/12/2019.

·         More nested loops, image manipulation, selection.

·         Notes on selection and image processing. Some pics: et.bmp, gg.bmp, b&w lion, liberty in color, roses, tulips

Homework due next class:

·         Read chapter 7.

·         Program #8: 5-10-20 problem. Data file.

Day #7. Tuesday, 9/10/2019.

·         Today: writing functions. Notes.

Homework due next class:

·         Program #7: Write a snowflake program that uses a function to draw one branch of the snowflake. The function must be called multiple times.

Day #6. Thursday, 9/05/2019.

·         More loops: nested loops. Notes.

Homework due next class:

·         Read chapter 6, sections 1-6.

·         Program #6: Write an arrowhead program.

Day #5. Tuesday, 9/03/2019.

·         Lists of colors, cycling through a list

·         Colors in rainbow order (kind of)

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

Homework due next class

·         Read chapter 5.

·         Program #5: Spiral Rainbow

Day #4. Thursday, 8/29/2019.

·         More loops, more turtle graphics. Notes.

·         Sample code: triangle, square, pentagon, polygon, star of lines, flower of polygons, spiral of polygons

Homework due next class

·         Program #4: A circle/star of parallelograms.

Day #3. Tuesday, 8/27/2019

·         Turtle graphics (chapter 4). Notes. Examples

Homework due next class

·         Finish reading chapter 4.

·         Program #3: turtle graphics, repetition, stars

Day #2. Thursday, 8/22/2019

·         Today: arithmetic, relational operators, Boolean values, data types, input. Notes.

·Saving a program and handing it in.

Homework due next class

·         Program #2 to compute average score for a student. Put your "py" file in the drop box before noon on Tuesday.

·         Read chapter 3 and sections 4.1-4.5 of our textbook.

Day #1. Tuesday, 8/20/2019

·         How to become a superstar

·         Beginning Python: notes

Software used in this class

·         Required: Anaconda Python

·         Required: Wing IDE Download the Pro ZIP version.

·         Personal activation code for fall, 2019: 6N32A-78WY2-B719F-DLRCE

·         Lab activation code for fall, 2019: NN33B-BWKPF-PV9AN-NCVK8

·         Optional: An online Python interpreter

Python resources:

·         Our (free) online textbook: How to Think Like a Computer Scientist

·         Another free Python course: Coursera online book, Coursera online videos

·         And another: Python Programming Fundamentals videos. These are Python videos for the textbook Python Programming Fundamentals.

·         Exercises

Homework due Day #2 at class time

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

·         Read chapters 1 and 2 of our textbook: How to Think Like a Computer Scientist. Be prepared for a quiz.

·         Write program #1 and put it in the drop box.


Day #18. Thursday, 10/24/2019. More lists

·         Lists. Notes.

·         List functions to try.

Homework due next class:

Day #19. Tuesday, 10/29/2019.

Homework due Tuesday, 11/01/2019:

Day #20. Thursday, 10/31/2019. Files, selection

Homework due next class:

Homework due next class:

Day #21. Tuesday, 11/05/2019.

Homework due next class:

Homework due Thursday, 11/20/2019:


Homework due Thursday

Day #22. Tuesday, 11/05/2019.

Day #23. Thursday, 11/07/2019. Test #2

Day #24. Tuesday, 11/12/2019

Homework due Thursday, 11/27/2019:

Day #25. Thursday, 11/14/2019

Homework due Tuesday

Day #26. Tuesday, 11/19/2019

Homework due Tuesday

Day #27. Thursday, 11/21/2019.

Homework due next class

Day #28. Tuesday, 11/26/2019

Day #29. Tuesday, 12/03/2019

Day #30. Thursday, 12/05/2019

Final Test

Tuesday, 12/14/2017: Final Test