AP CSP 3.2 Exercise 2: Data Abstraction Applied Challenge

Big Idea 3: Algorithms and Programming · Topic 3.2 · Exercise 2

Data Abstraction: Applied Challenge

Six scenarios about lists as abstractions, and what changes when data gets a name instead of a set of numbered variables.

How this one is different

Data abstraction is easy to define and hard to argue for. These questions ask you to make the argument concretely, on real programs.

Applied Practice

6 questions · scenario driven · every answer is recorded for your teacher

Question 1 of 6Evaluate
A program tracks 40 test scores using 40 separate variables named score1 through score40.
What does replacing them with a single list most directly improve?
Incorrect. Forty values occupy roughly the same space whether named separately or held in a list.
Incorrect. A list preserves the order given. Sorting is a separate operation.
Incorrect. Using a list does not multiply execution speed. The gain is in how the code is written and maintained.
Correct. A list makes the count a property of the data rather than of the source code, so one loop handles any number of scores.
Question 2 of 6Apply
Which best describes what data abstraction provides?
Incorrect. Number base conversion is unrelated to data abstraction.
Incorrect. Abstraction manages complexity without removing capability.
Correct. Naming a collection lets the rest of the program reason about the whole rather than about every individual value.
Incorrect. Hiding errors is a defect, not an abstraction.
Question 3 of 6Analyze
A program stores each student as a list holding a name, a grade level, and a score.
What is the main benefit over three parallel lists, one per attribute?
Incorrect. The same values are stored either way. Only the grouping differs.
Correct. Parallel lists rely on matching positions, and any operation that reorders one and not the others silently corrupts every record. Grouping removes that risk.
Incorrect. Loops are still needed to visit each student.
Incorrect. Grouping data does not make any part of it read only.
Question 4 of 6Trace
The list scores holds [4, 8, 15, 16]. What does LENGTH(scores) return, and what does scores[2] hold in AP pseudocode?
Correct. The list has 4 elements, and AP pseudocode indexes from 1, so scores[2] is the second element, 8.
Incorrect. The length is 4, not 3, and index 2 is not the third element.
Incorrect. The length is right but 15 is scores[3] under 1 based indexing.
Incorrect. The length is 4. There is no fifth element.
Question 5 of 6Transfer
A team wants to add a fourth attribute to every student record.
Which storage design makes that change least disruptive?
Incorrect. Separate variables per student per attribute is the design that scales worst to any change.
Incorrect. Packing everything into one string forces the program to parse text before it can do anything.
Incorrect. Adding an attribute means adding a whole new list and updating every operation that must keep all of them aligned.
Correct. When a record is the unit, adding an attribute extends the record shape in one place rather than adding a parallel structure to maintain.
Question 6 of 6Evaluate
A student says abstraction always makes a program easier to understand.
What is the most accurate refinement?
Incorrect. Program length is not what determines whether hiding a detail helps.
Incorrect. Treating any technique as unconditionally good is what produces layers nobody can see through.
Correct. Abstraction trades visible detail for a simpler surface. That is a benefit exactly when the detail is irrelevant to the reader at that level.
Incorrect. The common case is a real improvement. Blanket rejection is as wrong as blanket endorsement.

Where to go next

Get in Touch

Whether you're a student, parent, or teacher — I'd love to hear from you.

Just want free AP CS resources?

Enter your email below and check the subscribe box — no message needed. Students get daily practice questions and study tips. Teachers get curriculum resources and teaching strategies.

Typically responds within 24 hours

Message Sent!

Thanks for reaching out. I'll get back to you within 24 hours.

🏫 Welcome, fellow educator!

I offer curriculum resources, practice materials, and study guides designed for AP CS teachers. Let me know what you're looking for — whether it's classroom materials, a guest speaker, or Teachers Pay Teachers resources.

Email

[email protected]

📚

Courses

AP CSA, CSP, & Cybersecurity

Response Time

Within 24 hours

Prefer email? Reach me directly at [email protected]