Comp 170-400 Schedule: Reading, Written Assignments, Class Activities

Fall 2018, First 8 Weeks

This schedule is approximate. Some things may well take more or less time than projected here, particularly since this is the first tiem with these texts. Still it gives an approximation of how to divide the work up fairly evenly to not get caught being way behind at the end.

Suggested dates for finishing written work are given, though you will actually be going over the work in the next class after you finish, with me or the TA.

Assignments could still be modified or extended, so do not consider assignments official until the day I introduce them in class.

The reading assignments, labeled Text, are listed for class days. Hopefully you have finished the reading before the class and can concentrate in class on associated written work, where you can get the most help.

The multiple choice and other questions built into the text are best done as you read.

Explicitly assigned exercises, many from the ending Exercises sections in chapters, are good things to work on in class when you can get easy help. I do not include all the exercises from these final sections in your assignments. I may add some longer problems not listed in the Exercises sections. They are listed about the time you should be able to start working on them. Hopefully you are ready to go over them with me or the TA before the next ones are introduced.

8/27 Monday
8/30 Thursday

9/3 Monday Labor Day, no class (see Friday 9/7 makeup)

9/6 Thursday
• Text: Through Ch 7
• Exercises: 5.6: all but the one on Pi (19, the last one?) Use loops for the first two!
• Exercises: 6.13: Use loops! Where the question just asks for a function, also call it to test it! 1-3, 6-8, 12, 13. 18 is optional if you want a challenge.
• Exercises: 7.10: 1, 2, 3, 5, 7, 9, 12.
9/7 Friday makeup for Labor Day holiday
• Text: Through Chapter 8, More Iteration
• Exercises in 8.14: 4, 8, and: Going back to the final program version in Randomly Walking Turtles, modify the function, isInScreen, so it has no if statements. It may help to first convert so there is a single if statement with a more elaborate compound condition. Recall that generally if statements that just set a boolean return value, can be removed and the return value can be derived from the if statement's condition.
9/10 Monday
• Text: Through Ch 9, Strings, skipping 9.15 (L-Systems).
• Exercises: 1-4, 5 (make sure this works for any integer. Have a good selection of tests.), 6, 8 (very short code possible!), 11, 18 (Assume the mapping is a permutation of the alphabet, and assume all letters are uppercase. Test carefully.), 19 (Include encrypt and decrypt, and use them together to test. See if you can include a single helping function to simpify recodings of both encrypt and decrypt.)
9/13 Thursday
• Text: Through Ch 12, skipping 10.15 on L-Systems and 12.5, Sparse Matrices. List comprehensions (10.22) are very handy, but not strictly necessary. I will expect you to be able to read examples like in that section but not expect you to write them. Similarly with 11.7: with-statements.
• Exercises in Chapter 10: 17-21, 24, 27 (This could just use s.replace(old, new), but follow the hint instead.)
• Exercises in Chapter 11: 1, 3, variation on 3 writing results to student_ranges.txt (Test in PyCharm....)
• Exercises in Chapter 12: 17 preferably with these variations: Do outside the browser (like in PyCharm, so you can freely work with files). Have the plaintext in a file and read it (so the code is not a ridiculous length). Replace all puctuation with blanks before splitting.
9/17 Monday
9/20 Thursday
9/24 Monday

9/27 Thursday, Project work, check finished exercises

9/29 Saturday, first team report due in luc.box.com.

10/1 Monday: project work

10/2 Tuesday, team report due in luc.box.com

10/4 Thursday: project work

10/6 Saturday, team report due in luc.box.com

10/8 Monday: No class! Mid-semester break (See Friday 10/12 makeup)

10/10 Wednesday
DUE: intermediate version of Final Team Project
10/11 Thursday
Java Play Computer exercises that should help prepare for the Java Review Problems. See also Extra allowed Java notes.

10/12 Friday makeup class: project work and Java questions

10/13 Saturday, final incremental team report due in luc.box.com

10/15 Monday: project work

10/18 Thursday
Final Project Presentations. Files due an hour before class.
10/19 Friday
Takehome Final due. See Review, Extra allowed Java notes