Unit |
BJP Chapter Reading
Topics |
Problems, Exercises |
1 |
Ch 1.1 - 1.2
Logistics
Programming/Java definition
println
methods |
Ch 1, p. 54
Exercises 1-7 |
2 |
Ch 1.4-1.5, 2.1-2.2
Flow control
Expressions
Variables
Coding conventions |
Ch 1, p. 55
Exercises 8-13
Ch 2, p. 117
self-check problems 1-4, 7-13
Ch 2, p. 124
Exercise 1 |
3 |
Ch 2.3
Definite loops
Nested loops |
Ch 2, p. 124
Exercises 2-8, 9-16 |
4 |
Ch 2.4-2.5
Nested loops
Pseudocode
Class constants |
Ch 2, p. 121-123
self-check problems 23-28
p. 130, problem 6: Space Needle project |
5 |
Ch 3.1 (pp. 132-147)
Scope
Parameters |
Ch 3, pp. 177-180
self-check problems 1-3, 7-8
Ch 3, pp. 183-184
Exercises 1-5
Ch 3 pp. 185-186 Programming Project #1:Christmas Trees |
6 |
Ch 3G.1-3G.3
Using objects
DrawingPanel
DrawingPanel.java(place in your src folder)
Procedural decomposition with graphics |
Ch 3G, pp. 216-217
self-check problems 1-4
Ch3G Exercises pp. 217-221. 1-9.
Ch3G Projects, pp. 222-225.
#1 (Concentric Circles)
#3 (Checkerboard)
Use these coordinates:
x, y, sizeSubFigures, #rows-cols, #Tiles
0, 0, 100, 1, 5
200, 25, 40, 5, 4
20, 120, 15, 10, 3
#5 (Cafe Wall) |
7 |
Ch 3.3, 3.2 pp. 177-181
Interactive programs using Scanner
Packages
Math class
Return statement |
self-check problems 4-6, 9-13
Ch 3, pp. 184
Exercises 6-10
Ch 3 pp. 186-187 Programming Projects
#2 Bank Ledger Sheet (should look like this)
#4 Triangle angles from sides
#5 Spherical Distance See SD Calculator. Implement the method on p. 416! |
8 |
Ch 3.2, 4.1, 4.4, 4.5
Conditionals |
Ch 4, pp. 289-293, 295-296
self-check problems 1-11, 22-26
Ch 4, pp. 296-299
Exercises 1-5, 9-12, 16
Ch 4 Projects
#1 Roman Numerals (p. 299)
#7 Pascal's Triangle (p. 300; Output 14 rows, n = 0-13)
Ch3G Project #4, p. 224
Set DrawingPanel dimensions to800 x 500.
Velocity = 100 m/sec
Angle = 65 degrees
Steps = 100
Draw a GRID with black major gridlines every 100 pixels and gray minor gridlines every 25 pixels.
Use drawOval() to plot/draw each point. Recall that the first two parameters are the left and top of the point, not its center coordinates (the x and y points that the program calculates). Therefore, you need to write your code so that it draws each point centered around the actual (x,y) values.
NOTE: Use the code on pp. 174-176 (from the Projectile Trajectory Case Study in Chapter 3.4) to generate about 100 points for the curve. Capture these in an array, and plot each point on your graph. DO NOT use a scanner object. Simply hard-code the values for VELOCITY, ANGLE (degrees), and # STEPS in their corresponding variables.
Your output should look like this:Projectile |
9 |
Ch 4.2
1. Cumulative algorithms
2. Roundoff Error
3. Do not use == with double / float |
Ch 4, pp. 293-295
self-check problems 12-16
Ch 4, pp. 297-298
Exercises 6-8
Ch 4 Projects
#2 Day of Week (p. 299)
#4 B-Day (p. 300; in class!)
#6 Checksum (p. 300) |
10 |
Ch 3.3, 4.3
Strings
-As Objects though it behaves like a primitive type)
-0-based indexing
-Exceptions
-As ImmutableObjects
Scanner
Text processing
-the char type
-escape sequencecharacters
-char type variables can be used in a switchstatement
-conversion of char toint
-printf() |
Ch 3, pp. 181-182
self-check problems 14-15
Ch 3, pp. 185
Exercises 11-13
Ch 4, pp. 291-295
self-check problems 7-11, 17-21
Ch 4, p. 299
Exercises 13-15
For Exercise 13, ignore "scanner". printPalindrome(String s) will take a string as an object.
For Exercise 15, use the built-in String methods: split() and replaceAll():
String[] list = s.split("\\s+");
String w = w.replaceAll("[^A-Za-z0-9-]", "")
Ch 5 Projects
#1 Pig Latin! (p. 371).
In the Ch4 Exercises and the Ch5 Project, do not use a scanner. Instead create string literals containing your test phrases. |
11 |
Ch 5.1, 5.2
Indefinite loops
Fencepost, sentinel loops
Math.random()
Random Objects |
Ch 5, pp. 357-362
self-check problems 1-13
Ch 5, pp. 368-370
Exercises 1-5,8-11
#5: use the method below to generate a random letter (as a String):
public static String getRandomLetter() {
String letters = "abcdefghijklmnopqrstuvwxyz";
int index = (int)(Math.random() * 26);
String ch = letters.substring(index,index+1);
return ch;
}
Ch 5 Projects (p. 372)
#3 Guessing Game + Hint
#6 2-D Random Walk using DrawingPanel. Stop when pixel walker reaches an edge. |
12 |
Ch 6.1-6.4
File reading with Scanner
Line-based file input
(OPTIONAL) |
|
13 |
Ch 6.5
Searching a file
(OPTIONAL) |
|
14 |
Ch 7.1, 7.2
Arrays
pp. 425-460 READ! |
Ch 7, pp. 491-492
self-check problems 1-13
Ch 7, pp. 496
Exercises 1-5,7-17;
#5, 11 & 13 together in class. |
15 |
Ch 7.3, 7.4, 7.5
Reference semantics
Arrays for tallying
2-D Arrays |
Ch 7 Projects (p. 499)
#5 Tic-Tac-Toe (Fill array with X's and O's and use print() code p. 474 to display)
Playing Cards Project |
16 |
Ch 5.3, 5.5
Boolean logic
Short-circuit Evaluation
Flags !!
DeMorgan's Laws
Assertions |
Ch 5, pp. 362-362, 366-367
self-check problems 14-22, 27-29
Ch 5, pp. 370-371
Exercises 13-18 (solve 18 both ways: with AND without using a String). |
|
|
|
17 |
Ch 10.1 (pp. 629-646)
ArrayLists
Basic ArrayList Methods(table p. 634):
add(), clear(), get(), remove(), set(), size()
ArraysToArrayLists.java |
Ch 10, pp. 674-675
Self-check problems 1-17.
Answers: p. 1081.
Ch 10, pp. 675-677
Exercises 1-8, 13, 15-16
Extremely important exercises! We will go over all problems in in class! |
18 |
Ch 8.1-8.4 (pp. 500-538)
Object-oriented programming
Classes
Constructors
Encapsulation
Ch 10.2 (pp. 646-658)
Comparable, Interface
Object composition |
Ch 8, pp. 548-550
Self-check problems 1-22.
Answers: pp. 1070-1075.
Ch 8, pp. 550-552
Exercises 1-17
Ch 8 Projects (p. 553-554)
#1 Rational Number Class: See pp. 264-265 for how to handle writing theIllegalArgumentException.
Ignore "Extra Challenge"
#2 Date Class
#3 GroceryList Class (you'll see s.t. similar on the AP exam)
Ch 10, p. 677 (ArrayLists applied to Classes!)
Exercises 17-19 |
19 |
Ch 9.1, 9.2
Inheritance
super-class
super
equals
instanceof |
Ch 9, pp. 616-617
Self-check problems 1-3.
Answers: p. 1076.
Ch 9, pp. 623-626
Exercises 1-11
You will DEFINITELY see a problem like #9 on the AP exam |
20 |
Ch 9.5
Interfaces
Abstract classes |
|
21 |
Ch 9.2, 9.3, 9.6
Super class
Polymorphism |
|
22 |
Ch 13.1-13.3
Complexity
Binary search
Sorts
Recursion |
|