M 12/1/14
F
|
No additional
HW due. Rest and relax during your break!
|
|
T 12/2/14
G
|
Block 2: No
class.
Block 5: The assignment that was supposed to be due today was mistakenly not
posted in time. Accordingly, the due date has been moved to tomorrow.
|
|
W 12/3/14
A
|
HW due (both
periods):
1. Read Lessons 27 and 28. (Note:
We are skipping Lesson 26 for now.)
2. Write Exercises 1-22 all on p. 27-3.
3. Write personal pseudocode (with complete
clarity, but omitting all comments) to implement a recursive algorithm for
the Towers
of Hanoi game. Since this is a classic exercise with hundreds of examples
of pseudocode that you can find online, we will
make the problem slightly more challenging by imposing the following
requirements:
(1) In the “wrapper” pseudocode, i.e., the pseudocode that lies outside the method that is called
recursively, include all necessary initializations so that if you were to
implement your code in Java, the translation from pseudocode
to Java would be easy. Note:
Initializations and imports, if any, are not to be written in Java; they are
merely notes to yourself to set up the appropriate data structure(s) so that
if you later translate to Java, you don’t forget anything. There are no hard
and fast rules on how to do this. Everyone will take a unique approach.
(2) The tower size, n, is to be
specified by the user. Include pseudocode to verify
that n is an integer between 0 and
125, inclusive. The algorithm should exit without doing anything if n is an invalid value.
(3) Label the spindles A, B, and C, and assume that the tower of size n always starts on spindle A.
(4) Assume that the n discs have
diameter 1, 2, 3, . . ., n, when
initially reading from top to bottom on spindle A.
(5) The ending spindle for the tower can be either B or C. (If n = 0, the concept of an ending
spindle is undefined.) However, the preferred ending location for a tower of
size n is spindle C, which would
mean that as long as n > 0, the
tower of size n – 1 should first be
moved to spindle B; then the n-sized
disc can be moved from A to C, and the tower of size n – 1 can be moved from B to C.
(6) The algorithm should work correctly for any legal value of n, including 0. At the successful
completion of all the disc moves, the message “Success!” should be displayed
once.
(7) Each disc move that occurs should be printed for the user to see, using
the following format:
Now moving disc of diameter ### from spindle #
to spindle #.
|
|
Th
12/4/14
B
|
Period 2 HW
due:
1. Use the pseudocode given in class on Wednesday
to flesh out a working Java version of the Towers of Hanoi.
2. Read this Wikipedia
article. The first illustration (the colorful one with Requirements,
Design, Implementation, Verification, and Maintenance) is often rendered as
Requirements Analysis, Design, Coding, Testing, Documentation, and
Maintenance. Documentation and testing can often be swapped or conducted in
parallel, at least to a certain degree.
Period 5: No class.
|
|
F 12/5/14
C
|
Period 2: No
class.
Period 5 HW due:
1. Use the pseudocode given in class on Wednesday to
flesh out a working Java version of the Towers of Hanoi.
2. Read this Wikipedia
article. The first illustration (the colorful one with Requirements,
Design, Implementation, Verification, and Maintenance) is often rendered as
Requirements Analysis, Design, Coding, Testing, Documentation, and
Maintenance. Documentation and testing can often be swapped or conducted in
parallel, at least to a certain degree.
|
|
M 12/8/14
D
|
HW due (both
periods):
1. Read the “Tweaking for Speed” project on p. 28-7. Execution is optional.
(As the author notes, we are rarely concerned with how fast our code runs.
Real-time control software is an example of an exception.)
2. On your HW paper, write another example of a situation in which the speed
of execution is important.
3. Read Lesson 29.
4. Write problems 1-5 on p. 28-6 and problems 1-9 on pp. 29-4 and 29-5.
|
|
T 12/9/14
E
|
Period 2 HW
due:
1. Read Lesson 31. (Note: We are
skipping Lesson 30 for now.)
2. Write #1-14 all on p. 31-4.
3. Write #1-5 all on p. 31-5.
Period 5: No class.
|
|
W 12/10/14
F
|
Period 5 HW
due:
1. Read Lesson 31. (Note: We are
skipping Lesson 30 for now.)
2. Write #1-14 all on p. 31-4.
3. Write #1-5 all on p. 31-5.
Period 2: This is the “flipped” day. We will have class today, but no
additional HW is due today.
|
|
Th
12/11/14
G
|
Period 2: No
class.
Period 5: No additional HW is due today.
|
|
F 12/12/14
A
|
HW due (both
periods):
1. Read Lesson 32.
2. Write #1-8 all on p. 32-3.
3. Write #1-4 all on p. 32-4.
|
|
M 12/15/14
B
|
Period 2 HW due:
1. Read Lesson 33.
2. Write the exercise (4 problems) on p. 33-3.
3. Write problems 1-6 on pp. 33-4 and 33-5.
Period 5: No class.
|
|
T 12/16/14
C
|
Period 2: No class.
Period 5 HW due:
1. Read Lesson 33.
2. Write the exercise (4 problems) on p. 33-3.
3. Write problems 1-6 on pp. 33-4 and 33-5.
|
|
W 12/17/14
D
|
Test (100 pts.), on all recent material.
This will be the last major assessment of the quarter. There are a large
number of tests scheduled for today, but fortunately, of the 243 students who
have tests today, only 5 have a test in one of Mr. Hansen’s classes. Nobody
has a double conflict with Mr. Hansen. It originally looked as if no dates
would be possible for a test before the new year because of scheduling
conflicts, but amazingly, all the stars aligned on 12/17.
|
|
Th
12/18/14
E
|
Period 2 HW
due: Sleep.
In class: Pairs programming exercise on string shuffler.
Period 5: No class.
|
|
F 12/19/14
F
|
Period 5:
In-class pairs programming exercise on string shuffler.
Period 2: Jeopardy Bingo.
|
|
|
Christmas
break.
|
|