General FRQ Tips for Students
In this article, I will be sharing some general tips for answering the AP CSA Free Response Questions.
Free Response Question Types
Let's first look at each question type.
Question 1: Methods and Control Structures
The first question assesses students ability to write methods that contain calls to methods and include if statements or loops or both. This two part question focuses on what students learn in units 1 - 5 of the course and exam description. No data structures are used in this question.
Question 2: Class Design
This is a class question. Students will need to write a class that fulfills the functionality that is outlined in the provided description and accompanying table. This question primarily focuses on assessing unit 5 and sometimes 9. Additionally, some of the methods in the class will contain calls to methods, if statements, or loops.
Question 3: Array and ArrayList
This question involves manipulating and using data in an array or ArrayList
object, or in some cases, both array and ArrayList
. So, primarily focused on units 6 and 7. However, students will most likely need to use content in units 1 - 5 as well. The content in unit 8 on 2D arrays is not a part of this question.
Question 4: 2D Array
This question involves manipulating and using data in a 2D array object. Sometimes, this question will also involve an array or ArrayList
as well. Students will most likely need to use content in units 1 - 5 as well.
Note about Recursion
It is important to note that the writing of recursive methods are not a part of the AP CSA Free Response section of the exam and is only assessed on the multiple-choice section of the exam. Some questions might lend themselves well to recursive solutions and will be awarded credit if completed correctly; however, the questions were not written with a recursive solution in mind and therefore a recursive solution is most likely not the most straight-forward way to approach these questions.
General Tips
The following general tips can be useful on when approaching the exam.
- Be sure to read the question carefully. Typically information is presented in multiple modes: written, examples, through code. If when you are reading, something isn't clear, be sure to look at the examples for clarity.
- Use the highlighting tools in BlueBook to highlight the key parts of the question. For example, if you are being asked to write a method, take some time to highlight the following: return type of the method, method parameters, any instance variables provided for the object. All these pieces give clues about what you need to write.
- Take time to practice with BlueBook in advance so that you know what the exam layout will look like and how to use the tools. Be sure that you are able to access the quick reference sheet so that you know how to find it on exam day.
- If you are given method parameters, the method needs to use them in the solution otherwise they wouldn't be provided.
- If there is a return type, that means that you are probably calculating something in the method and this value will need to be returned. It is a strong possibility that the instance variables provided need to be used in one or both parts of the question. This data are the tools you need to solve the problem. They represent what you have to work with!
- Are there helper methods (methods that are given, but you don't have to write) provided in the class? They are provided for you to use in your solutions, either in part A or B or both. If you finish the solution without using the provided helper methods, you may have reimplemented something they already gave you. Take a step back and think where might that method have been used.
- Do not just code the method to work with the provided examples. The method needs to work for all cases. The examples are good to use to check your work and ensure that you are getting the right results, but methods are written to represent an abstract action not just to provide results to concrete solutions.
- Take a few minutes to gather your thoughts about the question. Sketch out the solution on some scrap paper before writing the solution. Don't take too long writing a detailed algorithm, but an outline can help ensure that you don't forget critical parts of the solution from the time you read through the question and wrote the solution.
- If you are struggling to figure out part A, move on to part B. Don't spend too much time trying to wrestle with any one question or part. This is a numbers game and you are trying to get as many points as possible. Sometimes part B is easier than part A. Don't just assume that if you can't answer part A, part B is a waste of your time. Sometimes, while you are solving part B, you'll get an epiphany about part A. You can always go back to part A. Same goes for questions. Some students find question 2 easier than question 1. Don't waste too much time struggling on any one question. You have about 22 minutes per question.
Do your best and good luck!
More Resources