COMP 141: Computer Science I, Fall 2012

Administrivia

Resources

Schedule

Date Topic Required Reading Notes Assignments Out Slides
8/22 Introduction, Abstraction, Algorithms        
8/24 More algorithms, started Python, print function 2.1-2.3 day2.py    
8/27 Variables, input from the keyboard 2.5-2.7 day3.py Modify your code to deduct income tax -- see Piazza for more info. Due 8/29.  
8/29 Some terminology, data types, evaluating expressions from the inside out 2.4, review data types in 2.5, 2.8   Solve the quadratic equation with a program. Due 8/31.  
8/31 Started functions and graphics library 3.1 firstgraphics.py Unofficial assignment: download graphics library files and get the circle drawing program running.  
9/5 More functions: passing variables 3.1-3.4 graphics_with_functions.py Programming Project 1: Avatar Browser, due 9/12 on Moodle.
"Assignment 1" on MyProgrammingLab due 9/7.
 
9/7 Good programming practices, debugging, more functions 3.5 birthday.py    
9/10 Tracing code, local variables in functions, returning values from functions, if statements Review all of ch3, 4.1 if-stmt.py    
9/12 Practice with code tracing and if statements, if-else statement 4.1-4.2      
9/14 if-elif-else, and/or/not 4.3-4.5 birthday2.py, birthday3.py Assignment 2 on MyProgrammingLab, due Monday, 9/17.  
9/17 Practice with if-elif-else and and/or     Programming Project 2, due 9/24 11:59pm on Moodle.  
9/19 "Talk Like a Pirate Day" translator: replace() for strings, lists, and for loops 5.3, 8.1-8.2, pgs 357-358 for string replace pirate.py    
9/21 Practice with for loops        
9/24 Review for exam        
9/26 Exam        
9/28 Intro to while loops 5.1, 5.2      
10/1 Exam debriefing     Programming Project 3, due 10/8 11:59pm on Moodle.  
10/3 For loops combined with graphics   forloopgraphics.py If this won't run, download the updated version of simplegraphics.py from above.    
10/5 How to be a supervillain, aka while loop practice   james.py    
10/8 Summing numbers 5.4 sum_of_numbers.py Programming Project 4, due 10/17 11:59pm on Moodle.  
10/10 Using a while loop to draw circles 5.5 ask_circles.py    
10/12 Pair programming: While loop to draw line segments   ask_lines.py ask_lines2.py    
10/17 Reading from files 7.1   Assignment 3 on MyProgrammingLab, due 10/24 11:59pm.  
10/19 Reading from files II 7.2 sumfromfile.py (read a file that begins with the number of things to be processed) sumfromfile2.py (read a file that ends with a sentinel value)    
10/22 Reading from files III, string manipulation I 9.1-9.3 sumfromfile3.py (read a file that has no special sentinel at the end) Programming Project 5, due 10/29 11:59pm on Moodle.  
10/24 String manipulation II: for loops over strings   oct24.py (looping over a string)    
10/26 String manipulation II: for with indices over strings   oct26.py    
10/29 Review for exam        
10/31 Exam        
11/1 No class; professor ill        
11/5 Binary number system 1.3      
11/7 Lists I 8.1-8.3      
11/9 Lists II (reading lists from keyboard or files) 8.4-8.5, 8.7 nov9.py Assignment 4 on MyProgrammingLab, due 11/14 11:59pm.  
11/12 Test review     Programming Project 6, due 11/19 11:59pm on Moodle.  
11/14 Lists III (practice reading in parallel lists)   music-start.py (we wrote read_music() today)    
11/16 Lists IV (more practice with parallel lists)   music-start.py (we wrote compute_most_alike_artist() today)    
11/19 Common list operations: find, filter, transform   Common operations, started hangman    
11/26 Matrices (2-dimensional lists) 8.8 nov26.py Programming Project 7, due 12/5 11:59pm on Moodle.  
11/28 Finished hangman (more practice with filter and transform on lists & strings)   hangman-complete.py    
11/30 Words with Friends        
12/3 Big-oh       Slides
12/5 Sorting and wrap-up       Slides