CS Principles Unit 9 Lesson 4
Name(s) __________________________________________________ Period _______ Date _____________________
Activity Guide (Version A) - Create PT Mock Exam
Best Practices: Planning, Annotating, and Prewriting
These Planning, Annotating, and Prewriting Strategies are useful when
planning for the written response portion of the AP CS Principles exam. This
process will help you prioritize your responses, break down each question into
key terms to focus your writing, and plan out each response in order to ensure
that all parts of the question are answered. Finally, these strategies will help
you easily identify areas of the question that you have answered and areas
that still need to be addressed.
🔎 Planning
● Read all questions first: Quickly read each question to get an overview.
● Prioritize questions: Identify questions you feel more confident about and prioritize them. Consider
starting with questions that align with your strengths or those that seem more straightforward.
📍 Annotating
● Circle key terms: Identify and circle key terms to focus your response.
📝 Writing
● Create a rough outline: Organize your main points in a logical order and ensure that your outline aligns
with the main points from your annotations.
● Write responses and cross off key terms, following the outline you created. As you address each
numbered key term in your response, visually cross it off on your annotated plan..
🤔 Reflect
● Reflect on your experience so that you can grow your written response skills.
1
🔎 Planning
Begin by quickly reviewing all four questions. Identify questions you feel more confident about and prioritize
them, starting with those aligning with your strengths or appearing more straightforward. Order the question
numbers by priority below.
Question 1: Program Design, Function, and Purpose (page 3)
Identify an expected user of your program. Describe one way your program’s design meets the needs of this
user.
Question 2(a): Algorithm Development (page 4)
Consider the first iteration statement included in the Procedure section of your Personalized Project Reference.
Identify the number of times the body of your iteration statement will execute. Describe a condition or error that
would cause your iteration statement to not terminate and cause an infinite loop. If no such condition or error
exists, explain how the loop could be modified to cause an infinite loop.
Question 2(b): Errors and Testing (page 5)
Consider the procedure included in part (i) of the Procedure section of your Personalized Project Reference.
Describe a change to your procedure that will result in a run-time error. Explain why this change will result in a
run-time error.
Question 2(c): Data and Procedural Abstraction (page 6)
Suppose you are provided with a procedure called isEqual (value1, value2). The procedure returns true if the
two parameters value1 and value2 are equal in value and returns false otherwise. Using the list you identified
in the List section of your Personalized Project Reference, explain in detailed steps an algorithm that uses
isEqual to count the number of times a certain value appears in your list. Your explanation must be detailed
enough for someone else to write the program code.
Priority 1 Priority 2 Priority 3 Priority 4
Question ___ Question ___ Question ___ Question ___
2
Question 1: Program Design, Function, and Purpose
📍 Annotating
Review the question and circle key terms in order to identify terms to address in your response.
Identify an expected user of your program. Describe one way your program’s design meets
the needs of this user.
📝 Write your response
Use the key terms to guide your response, making sure to address each one. As you address each key term,
cross if off above.
3
Question 2(a): Algorithm Development
📍 Annotating
Review the question and circle key terms in order to identify terms to address in your response.
Consider the first iteration statement included in the Procedure section of your Personalized
Project Reference. Identify the number of times the body of your iteration statement will
execute. Describe a condition or error that would cause your iteration statement to not
terminate and cause an infinite loop. If no such condition or error exists, explain how the
loop could be modified to cause an infinite loop.
📝 Write your response
Use the key terms to guide your response, making sure to address each one. As you address each key term,
cross if off above.
4
Question 2(b): Errors and Testing
📍 Annotating
Review the question and circle key terms in order to identify terms to address in your response.
Consider the procedure included in part (i) of the Procedure section of your Personalized
Project Reference. Describe a change to your procedure that will result in a run-time error.
Explain why this change will result in a run-time error.
📝 Write your response
Use the key terms to guide your response, making sure to address each one. As you address each key term,
cross if off above.
5
Question 2(c): Data and Procedural Abstraction
📍 Annotating
Review the question and circle key terms in order to identify terms to address in your response.
Suppose you are provided with a procedure called isEqual (value1, value2). The procedure
returns true if the two parameters value1 and value2 are equal in value and returns false
otherwise. Using the list you identified in the List section of your Personalized Project
Reference, explain in detailed steps an algorithm that uses isEqual to count the number of
times a certain value appears in your list. Your explanation must be detailed enough for
someone else to write the program code.
📝 Write your response
Use the key terms to guide your response, making sure to address each one. As you address each key term,
cross if off above.
6
🤔 Reflect
● Reflect on your experience so that you can grow your written response skills.
Where I Had Trouble
Questions I Have
What I Did Well