AP Computer Science Exam Information
This year's exam will be given on Tuesday
May 3, 2011 at
7:30 am. It will be given in the Community Board Room downstairs next
to the District Administration offices. Make sure that you have already filled in the Scantron registration section of the exam with Mrs. Kreps before the day of the exam.
Mr. Minich will have brain-food in Room 202 at 7:15 a.m. on the day of the test.
Java students will be taking the Computer Science A Exam ( www.collegeboard.com/student/testing/ap/sub_compscia.html
).
Registration: See your guidance counselor to register for the exam. The cost is approximately $87 per test which should be paid by a check made out to
the "Wyomissing Area School District." Please pay by mid-February. The CEEB code for the AP exam is 395-410.
Items to bring to the Exam:
- Bring a few sharpened #2 pencils
with good erasers. There is no pencil sharpener in the exam room.
- Bring a blue or black pen. It is required on the instruction
form.
- Wear a watch since you may not be able to
see a
clock in the exam room.
- Bring a jacket and dress in layers in case it is unseasonably warm or cold
in the exam room.
- Know Wyomissing's CEEB code which is 395-410
- A photo ID
- Tissues especially if you have seasonal allergies
Items that you should NOT bring to the Exam:
- calculator, cell phone, mp3 players, camera, etc.
- textbooks, dictionaries, QuickReference packet (one will be provided), AP exam workbook, or any other books or study materials
- scratch paper (Special scratch paper will be provided
by the exam proctor)
- bottled water or other food or beverages (technically
water is not allowed for this 3 hr exam)
The test is made up of 2 sections.
- Part I Multiple Choice - 1 hour 15 mins - The multiple-choice
section will contain 40 questions. Five to ten of
the questions
will have something to do with the GridWorld case study.
- Part II Free Response - 1 hour 45 mins - The free-response
section will contain 4 questions, each with 3 or 4 parts (a, b, c, and d).
One free-response question will have to do with the GridWorld case study.
Another free-response is considered the "design question" and will probably ask you to design a class, an abstract class, or an interface and write the class declaration (i.e. write out the class including its properties, constructors, & a few other methods.) See sample free response questions and solutions
from previous years on the College Board Web site.
Be familiar with the Quick Reference materials since you will be able to use it during both parts of the exam.
Review the AP Java Subset at www.collegeboard.com/student/testing/ap/compsci_a/java.html
to be sure that you are familiar with and have reviewed the Java specific
syntax and structures that will be covered on the exam.
You must be familiar with the Gridworld Case Study at gridworld.info
I HIGHLY recommend that you study from one of the available AP exam workbooks. Each workbook is about $15 and can be ordered through a local bookstore or from Amazon.com.
I matched up the table of contents from the following workbooks with the units in our couse: Barron's 4th edition
Barron's 5th edition
Read these two pages of test-taking tips: A Letter to Students and Exam Tips
Other Helpful Resources:
Tips & Advice
- Know how to get around the Quick Reference packet and use its table of contents & index.
- Write down what time the test is over since the proctor doesn't remind you.
- Multiple Choice
- There will be 5-7 Case Study multiple choice questions.
- There may be so many code tracing exercises that you have difficulty finishing the multiple choice section in time. Don't become consumed by one tracing exercise since all questions are weighted equally.
- About 30 out of 40 multiple-choice questions will probably
involve a fair amount of tracing code.
- There may be 2 or 3 questions on Boolean Algebra (e.g. DeMorgan's Law,
true/false logic).
- There could be a problem asking you to convert a binary, octal, or hexadecimal
number to a decimal number.
- Use the get method with ArrayLists and use square brackets only with arrays.
- Make sure that you are correctly using a method's parameters
supplied in the problem. Do not declare local variables when a parameter should be used.
- Be sure to call methods properly.
- Avoid being off-by-one with loops, arrays, ArrayLists,
etc. (0, 1, n, n-1, length - 1, size() - 1, etc.)
- Do not use constants from specific examples that may be given in the problem. That is, do not hardwire an algorithm with a value that is just used in the directions as an example.
- Make sure that you do use the exact variable and method
names as specified in the problem.
- There may not be a whole lot on the exam about the Integer or Double classes but you should still be able
to work with these classes. Remember that Integer's and Double's are immutable.
- There will be one or two double-nested loop exercises to analyze and trace
- Free Response
- One of the free-response questions
will be a "design problem" where you
have to design an interface, class, or an abstract class. You may have to write out a whole class on this question!
- Write your answers correctly. Only display output when you are specifically asked to print something out. You are rarely asked to System.out.println but rather you must return values from a method instead.
- Be sure to return values from methods when specifically asked to do so and that you return the specified data type (i.e. if necessary cast a double to an int )
- Do not confuse arrays int nums[] = new int[10]; with ArrayLists
- A free response question may deal with mathematical
proportions or ratios.
- When answering an AP question always ask yourself, "What algorithm or what purpose does the test-maker have in mind for this question?"
- The exam-graders are looking at your free-response answers to be "good first drafts" of code. You can miss a semicolon or two but make sure that the "important" syntax is correct and precise.
Some of the most common errors are:
- being off by one in loops
- failure to return a required value
- writing code that fails to satisfy the required post-conditions
- failure to initialize a variable (e.g. int num = 0; )
- dangling else
- failure to check for boundary cases like when a parameter could be zero or a really large number
- extraneous code which causes side-effect (e.g., including unnecessary System.out.print statements)
- use of an interface or class name instead of variable name
- writing aMethod(object) instead of using the dot notation correctly as in object.aMethod()
- illegally using private properties in a client program or a child class
- use class name in place of super in a constructor call statement
- use of wrong identifier
- forgetting the word new in a constructor call statement (i.e. instantiation)
- returning a value from a void method or a constructor
- modifying a constant (final)
- using equals method when comparing int and double values
- using == when comparing two objects
- assignment dyslexia x + 3 = y; instead of y = x + 3;
- super(method()) instead of super.method()
- formal parameter syntax problems with data types in call statements (e.g. passing an int where a String is expected)
- putting double quotes around "false" and "true" when used as boolean values
- putting double quotes around "null" when it should be null
- forgetting to declare local variables when necessary
- forgetting the parentheses when calling a default constructor
- confusing square brackets [] with parentheses () or angle brackets <> confusion
- using single equals = instead of double equals == and vice versa
- using length instead of size or vice versa when finding the length of arrays, Strings, and ArrayLists
- mistakenly writing private in front of local variable declaration statements
- missing { }
- missing ( ) on method call or around if/while conditions
- missing semicolons at the end of statements
- forgetting to typecase when necessary
- missing the word public or private when required