AP Computer Science - Class Updates.
The information on this page changes almost daily, and was last updated on 04/30/2010 11:18 AM. Students, all of your assignments, hints and solutions to different programming problems, and example quizzes/exams will be posted here.
You may view the older version of this page from the 2008-2009 school year here.
How do our reading assignments work? It's quite simple: At home, read the entire chapter for the unit we are working on, and during class code and test all of the in-text review/examples. You can download all of the code framework for them as "programs in text" in the resources section to save yourself time on merely inputting the code.
Please save ALL your work, as you will not know if some of it may be re-used or modified later as we progress through the textbook.
Chapter 1 - Class Notes PPT
The material in chapter one may seem rudimentary to a lot of you, but even for an experienced computer user there are a lot of terms and facts about computing that you should know prior to jumping into writing software. Make sure that you understand all this basic material!
- Information archival/retrieval
- Computer operation and terminology
- Social and Ethical implications of computing/networks
Quiz 1 (ungraded) - PDF with answer key
Chapter 2 - Class Notes PPT
Starting in this chapter, we use the IDE...if you can't get JCreator working on your machine, try BlueJ or Eclipse. The example on page 42 explains the layout of the code and what each section does. Please note that all of the current assignments need to be *applications* and not applets so that you can use the general output window for the system.
Quiz 2 (ungraded) - PDF with answer key
Chapter 3 - Class Notes PPT
This chapter covers the basics of writing code in the Java language. Starting on page 63 there are a series of examples that demonstrate how do display output, format output. We also cover escape sequences and help you establish good habits in writing clean, readable code.
You will need to complete ALL of the review assignments in the textbook for this chapter. For each new named program, create a new Java application in your save directory. As the textbook will draw on material from previously written code in future review questions, you will need to hold on to your work.
Quiz 3 (graded) - PDF with answer key
Chapter 4 - Class Notes PPT
Answering student questions:
Q: What is one difference between a
primitive and abstract data type?
A: Primitive data types define specific values, whereas abstract data types
define relationships.
Q: Why can't I get the Scanner class to work?
A: You need to import it in order to use the class:
import java.util.Scanner;
Complete all in-text review
assignments during class.
Implement the End-of-Chapter Case Study (Birthday Game) using the
information provided, but avoid looking at the book's version of the
implementation unless you get stuck. While you may come up with a
radically different solution than the text, the goal here is to have you
work through the thought-process of putting together a solution for the
problem given the skills that you have learned to date.
Quiz 4 - PDF with Answer Key
Chapter 5 - Class Notes PPT
Complete all in-text review assignments during class. Implement the End-of-Chapter Case Study.
In order to demonstrate your mastery of all class concepts through the end of Chapter 5, please complete the following problems from your textbook:
Homework 1
Page 103: Chapter 4, Exercise 15 –
SimpleInterest
Page 125: Chapter 5, Exercise 9 – GuessingGame
You will need to submit the following in hard copy for each program in class on Monday, October 19: 1. Algorithm 2. Flowchart 3. Code design (can be inline comments in the final code), print it all out. The implementation can be demonstrated to me in class; alternatively you are welcome to email me your code.
Quiz 5 - PDF with Answer Key
Chapter 6 - Class Notes PPT
Complete all in-text review assignments during class. Implement the End-of-Chapter Case Study.
In order to demonstrate your mastery of all class concepts through the end of Chapter 6, please complete the following problems from your textbook:
Homework 2
Page 151: Chapter 6, Exercise 8 – GuessingGame
Page 154: Chapter 6, Exercise 14 – DiceRolls
Page 155: Chapter 6, Exercise 19 – RemoveString
You will
need to submit the following in hard copy for each program in class:
1. Algorithm
2. Flowchart
3. Code design (can be inline comments in the final code).
Print it all out! The implementation can be demonstrated to me in class; alternatively you are welcome to email me everything in PDF format.
Quiz 6 - PDF with Answer Key
Chapter 7 - Class Notes PPT
Complete all in-text review assignments during class. Implement the End-of-Chapter Case Study.
Homework 3
Page 175: Chapter 7, Exercise 1 - House
Page 176: Chapter 7, Exercise 5 - AddCoins
Page 178: Chapter 7, Exercise 9 - Nim
Page 178: Chapter 7, Exercise 10 - GuessingGame
Chapter 8 - Class Notes PPT
Complete all in-text review assignments during class. Implement the End-of-Chapter Case Study.
Homework 4
Page 208: Chapter 8, Exercise 3 - LunchOrder
Page 209: Chapter 8, Exercise 5 - Nim2
Page 209: Chapter 8, Exercise 6 - GameOf21
Quiz 7 - PDF with Answer Key
Chapter 9 - Class Notes PPT
Complete all in-text review assignments during class. Implement the End-of-Chapter Case Study.
Homework 5
Page 236: Chapter 9, Exercise 1 - UEmployee, Faculty, Staff
Quiz 8 - PDF with Answer Key
Chapter 10 - Class Notes PPT
Complete all in-text review assignments during class. Implement the End-of-Chapter Case Study.
Homework 6
Page 266: Chapter 10, Exercise 1 - EvensAndOdds
Page 266: Chapter 10, Exercise 3 - RandomStats
Page 268: Chapter 10, Exercise 8 - Palindrome
Page 270: Chapter 10, Exercise 14 - Life
Chapter 13 - Class Notes PPT
For Chapter 13, you do not do the review assignments in the text. You will need to accomplish the following:
1. Using a standard integer array, implement
SelectionSort
2. Using a standard integer array, implement InsertionSort
3. using a standard integer array, implement Mergesort
Each of your sorting programs should initially work on an array of ten (10) elements, similar to the physical number card sorting that we have been doing in class. Once you get it working that way, you should modify your program so that it can work on arrays of any size.
Your test client for your sorting program should hand the sorting program an unsorted array of integers, which you can specify by hand or generate randomly.
For your program's output, it might be handy to display the array in this format each time you make a change:
1 4 2 7 5 8 3 9 0 6
...then you can track the progress of your algorithm as it sorts your array.
Chapter 14 - Class Notes PPT
Complete the review assignments in text so you understand how the
different data structures work:
Stack, Queue, and Linked List
Chapter 11 - Class Notes PPT
Homework
Page 307: Chapter 11, Exercise 2 - TicTacToeGUI
Case Study
Link to College Board resources for the AP Computer Science Case Study
GridWorld:
GridWorld Main Page
Download GridWorld Code (ZIP)
Download Student Manual (PDF)
AP Exam Preparation
See me for the practice exams!
Here is one you can do at home: Weekend Burnout Practice Exam