COMP 141: Programming Fundamentals, Fall 2019

Administrivia

Resources

Schedule (Topics and assignments for dates in the future should be considered tentative.)

Date Topic Required Reading Materials Assignments Out Slides
8/21 Intro I: What is CS? First day survey slides
8/23 Intro II: Python, math, variables, print statement 1.1-1.4
(1.5 optional)
Zybook assignment 1, complete before class on Mon 8/26 (no slides)
8/26 Intro III: review of variables and printing, memory diagrams 2.1, 2.3 slides
8/28 Intro IV: More variables, data types, input statement 2.4-2.7 handout (data types, variables, input),
handout (string formatting),
lab
Project 1, due on Moodle Wed 9/4, 11:55pm
Zybook assignment 2, complete before class on Fri 8/30
slides
8/30 Conditionals I: if, if-else, relational operators 4.1-4.3 Zybook assignment 3, complete before class on Wed 9/4 slides
9/2 Labor Day
9/4 Conditionals II: if-elif-else, logical operators 4.4, 4.5 handout (if statements), lab Project 2, due on Moodle Wed 9/11, 11:55pm
Zybook assignment 4, complete before class on Fri 9/6
slides
9/6 Functions I: defining and calling 6.1 handout Zybook assignment 5, complete before class on Mon 9/9 slides
9/9 Functions II: arguments and parameters 6.2 Zybook assignment 6, complete before class on Wed 9/11 slides
9/11 Graphics I handout slides
9/13 Graphics II lab Project 3, due on Moodle Thu 9/19, 11:55pm (no slides)
9/16 Functions III: return values 6.3 handout Zybook assignment 7, complete before class on Wed 9/18 slides
9/18 Functions IV: Lab lab slides
9/20 Loops I: while loops 5.1, 5.2 handout slides
9/23 Loops II: general procedure for while loops 5.3 handout/lab Project 4, due on Moodle Mon 9/30, 11:55pm
Zybook assignment 8, complete before class on Wed 9/25
slides
9/25 Loops III: loops that count 5.4 Zybook assignment 9, complete before class on Fri 9/27 slides
9/27 Loops IV: for loops 5.5 lab Zybook assignment 10, complete before class on Mon 9/30 slides
9/30 Loops V: running totals with James Bond slides
10/2 Exam I
10/4 Loops VI: input validation 5.6 Project 5, due on Moodle Fri 10/11, 5pm
Zybook assignment 11, complete before class on Mon 10/7
slides
10/7 Loops VII: sliding window technique, break statement 5.9 slides
10/9 Loops IX: nested loops 5.7 lab Zybook assignment 12, complete before class on Fri 10/11 (no slides)
10/11 Loops X: Lab lab (no slides)
10/14 Fall break
10/16 Files I: reading from files 12.1 handout slides
10/18 Files II: splitting lines, max algorithm slides
10/21 Files III: lab lab Project 6, due on Moodle Mon 10/28, 11:55pm (no slides)
10/23 Strings I: intro 3.1 Zybook assignment 13, complete before class on Fri 10/25 slides
10/25 Strings II: looping over strings 7.1 slides
10/28 Strings III: counting string reference, lab slides
10/30 Strings IV: filtering lab Project 7, due on Moodle Tue 11/12, 11:55pm slides
11/1 Strings V: Lab (no slides)
11/4 Review (no slides)
11/6 Exam II
11/8 Lists I list reference, lab slides
11/11 Lists II lab slides
11/13 Lists III handout/lab slides
11/15 Lists IV
11/18 2D Lists I Project 8, due on Moodle Tue Nov 26, 5:00pm (no slides)
11/20 2D Lists II lab (no slides)
11/22 2D Lists III: tic-tac-toe lab slides
4/25 2D Lists IV: tic-tac-toe w/ graphics lab Project 9, due on Moodle Wed Dec 11, 11:55pm (no slides)
11/27 Thanksgiving break
11/29 Thanksgiving break
12/2 Proj 9 Warmup lab (no slides)
12/4 Practice lab