---
title: "AP Computer Science Principles Written Response Practice"
description: "126 Written Response 2s written in the AP format, each scored part by part."
canonical: "https://fiveable.me/ap-comp-sci-p/frqs/written-response-2"
type: "frq-type-practice"
subject: "AP Computer Science Principles"
---

# AP Computer Science Principles Written Response Practice

## What the Written Response asks

Written Response 2 is the second of two written-response questions on the AP Computer Science Principles exam. Its three prompts ask about your Create program: how an algorithm works, how errors and testing play out, and how your list and procedure manage complexity.

- **60 min**: for both written responses
- **3 points**: across prompts A to C
- **30%**: of your score, for the whole Create task

| Part | What it asks | Points |
| --- | --- | --- |
| A: Algorithm development | How an algorithm or loop in your procedure works | 1 |
| B: Errors and testing | A test, an error, or a code change and what it does to your program | 1 |
| C: Data and procedural abstraction | How your list or procedure manages complexity in your program | 1 |

## How Written Response practice works

1. **Read the full question.** All three prompts, A to C, with a place to paste your program code or generate sample code to practice with.
2. **Write on a 30-minute timer.** Half of the 60-minute written-response section. Pause it or turn it off, and your response saves as you go.
3. **Submit for a score out of 3.** Your response is scored against the scoring guidelines written for that question. Your first score is included.

## All 126 questions

### Unit 1: Creative Development (1)
- [Test and explain a greeting-program prototype](/ap-comp-sci-p/frq-practice?id=6aab9b021ff1642af0944a2b&type=written-response-2)

### Unit 2: Data (1)
- [Test storage-savings calculations and interpret file-size data](/ap-comp-sci-p/frq-practice?id=6aab9b03fd19b95fc49a3b8d&type=written-response-2)

### Unit 3: Unit 3 – Algorithms & Programming Fundamentals (122)
- [Loop iteration mechanics and code modification logic errors](/ap-comp-sci-p/frq-practice?id=69681f5bda185247e017c02e&type=written-response-2)
- [Loop iteration logic and procedural abstraction](/ap-comp-sci-p/frq-practice?id=69681f6eda185247e017c02f&type=written-response-2)
- [Iteration statements, procedures, parameters, and logic errors](/ap-comp-sci-p/frq-practice?id=69681f7dda185247e017c030&type=written-response-2)
- [Loop iteration mechanics and validation logic](/ap-comp-sci-p/frq-practice?id=69681f91da185247e017c031&type=written-response-2)
- [Loop iteration, procedures, list frequency counting](/ap-comp-sci-p/frq-practice?id=69681fa7da185247e017c032&type=written-response-2)
- [Iteration statement execution and list modification logic](/ap-comp-sci-p/frq-practice?id=69681fb4da185247e017c033&type=written-response-2)
- [Loop iteration mechanics and procedural abstraction benefits](/ap-comp-sci-p/frq-practice?id=69681fc5da185247e017c034&type=written-response-2)
- [Loop operations, logic errors, procedure parameters](/ap-comp-sci-p/frq-practice?id=69681fd9da185247e017c035&type=written-response-2)
- [Loop iteration logic and code modification error analysis](/ap-comp-sci-p/frq-practice?id=69681fecda185247e017c036&type=written-response-2)
- [Loop iteration functionality and logic error detection](/ap-comp-sci-p/frq-practice?id=6968200ada185247e017c037&type=written-response-2)
- [Loop iteration and list processing modifications](/ap-comp-sci-p/frq-practice?id=6968201dda185247e017c038&type=written-response-2)
- [Code iteration, procedure functionality, program maintainability](/ap-comp-sci-p/frq-practice?id=6968202dda185247e017c039&type=written-response-2)
- [Loop iteration mechanics and procedural parameters](/ap-comp-sci-p/frq-practice?id=6968203fda185247e017c03a&type=written-response-2)
- [Loop operations, runtime errors, list validation algorithm](/ap-comp-sci-p/frq-practice?id=69682052da185247e017c03b&type=written-response-2)
- [Loop iteration logic and runtime error conditions](/ap-comp-sci-p/frq-practice?id=69682065da185247e017c03c&type=written-response-2)
- [Loop iteration logic and conditional procedure execution](/ap-comp-sci-p/frq-practice?id=69682080da185247e017c03d&type=written-response-2)
- [Loop iteration logic and procedural abstraction](/ap-comp-sci-p/frq-practice?id=69682090da185247e017c03e&type=written-response-2)
- [Iteration statements, procedure calls, parameters](/ap-comp-sci-p/frq-practice?id=696820a1da185247e017c03f&type=written-response-2)
- [Loop iterations, conditional procedures, list validation algorithms](/ap-comp-sci-p/frq-practice?id=696820c4da185247e017c040&type=written-response-2)
- [Iteration loops, procedure calls, list traversal algorithms](/ap-comp-sci-p/frq-practice?id=696820e7da185247e017c041&type=written-response-2)
- [Loop iteration execution and procedure equivalence](/ap-comp-sci-p/frq-practice?id=696820f9da185247e017c042&type=written-response-2)
- [Loop iteration logic and procedure modularity](/ap-comp-sci-p/frq-practice?id=6968210cda185247e017c043&type=written-response-2)
- [Code iteration logic and procedure abstraction](/ap-comp-sci-p/frq-practice?id=6968211fda185247e017c044&type=written-response-2)
- [Iteration logic, procedures, list validation algorithm](/ap-comp-sci-p/frq-practice?id=69682137da185247e017c045&type=written-response-2)
- [Code iteration mechanics and procedure behavior analysis](/ap-comp-sci-p/frq-practice?id=6968214dda185247e017c046&type=written-response-2)
- [Loop iteration, infinite loops, logic errors](/ap-comp-sci-p/frq-practice?id=696821f1da185247e017c047&type=written-response-2)
- [Iteration statements, loop termination, code encapsulation](/ap-comp-sci-p/frq-practice?id=69682210da185247e017c048&type=written-response-2)
- [Loop execution, infinite loops, logic errors, parameters](/ap-comp-sci-p/frq-practice?id=69682226da185247e017c049&type=written-response-2)
- [Iteration loops, logic errors, list algorithms](/ap-comp-sci-p/frq-practice?id=69682254da185247e017c04b&type=written-response-2)
- [Iteration termination conditions and logic errors](/ap-comp-sci-p/frq-practice?id=69682267da185247e017c04c&type=written-response-2)
- [Iteration termination conditions and loop logic errors](/ap-comp-sci-p/frq-practice?id=6968227bda185247e017c04d&type=written-response-2)
- [Iteration loops, termination conditions, logic errors](/ap-comp-sci-p/frq-practice?id=69682293da185247e017c04e&type=written-response-2)
- [Iteration termination conditions and logic error identification](/ap-comp-sci-p/frq-practice?id=696822a9da185247e017c04f&type=written-response-2)
- [Iteration control, infinite loops, logic errors](/ap-comp-sci-p/frq-practice?id=696822c1da185247e017c050&type=written-response-2)
- [Loop iteration count, infinite conditions, runtime errors](/ap-comp-sci-p/frq-practice?id=696822e7da185247e017c052&type=written-response-2)
- [Iteration logic, loop termination, procedural parameters](/ap-comp-sci-p/frq-practice?id=69682304da185247e017c053&type=written-response-2)
- [Loop execution, termination conditions, runtime errors](/ap-comp-sci-p/frq-practice?id=6968231fda185247e017c054&type=written-response-2)
- [Iteration loops, runtime errors, list algorithms](/ap-comp-sci-p/frq-practice?id=6968233cda185247e017c055&type=written-response-2)
- [Iteration statements, loop termination, procedure execution paths](/ap-comp-sci-p/frq-practice?id=6968234fda185247e017c056&type=written-response-2)
- [Iteration loops, termination conditions, infinite loops](/ap-comp-sci-p/frq-practice?id=69682365da185247e017c057&type=written-response-2)
- [Iteration logic, infinite loops, procedure parameters](/ap-comp-sci-p/frq-practice?id=69682377da185247e017c058&type=written-response-2)
- [Loop execution, termination conditions, infinite loops](/ap-comp-sci-p/frq-practice?id=6968238cda185247e017c059&type=written-response-2)
- [Iteration execution, termination conditions, infinite loops](/ap-comp-sci-p/frq-practice?id=696823a4da185247e017c05a&type=written-response-2)
- [Loop termination conditions and iteration statement execution](/ap-comp-sci-p/frq-practice?id=696823b7da185247e017c05b&type=written-response-2)
- [Loop execution, infinite conditions, procedure functionality](/ap-comp-sci-p/frq-practice?id=696823c7da185247e017c05c&type=written-response-2)
- [Iteration loops, procedures, parameter arguments, list validation](/ap-comp-sci-p/frq-practice?id=696823f8da185247e017c05e&type=written-response-2)
- [Iteration statements, loop conditions, procedural outcomes](/ap-comp-sci-p/frq-practice?id=69682410da185247e017c05f&type=written-response-2)
- [Boolean expressions, procedures, list manipulation logic](/ap-comp-sci-p/frq-practice?id=69682421da185247e017c060&type=written-response-2)
- [Boolean expressions, logic errors, procedural abstraction](/ap-comp-sci-p/frq-practice?id=69682432da185247e017c061&type=written-response-2)
- [Boolean expressions, logic errors, procedural parameters](/ap-comp-sci-p/frq-practice?id=69682443da185247e017c062&type=written-response-2)
- [Boolean expressions, logic errors, list validation algorithms](/ap-comp-sci-p/frq-practice?id=69682458da185247e017c063&type=written-response-2)
- [Boolean expressions, logic errors, list algorithms](/ap-comp-sci-p/frq-practice?id=6968246fda185247e017c064&type=written-response-2)
- [Boolean expressions, logic errors, list processing](/ap-comp-sci-p/frq-practice?id=69682481da185247e017c065&type=written-response-2)
- [Boolean expressions, logic errors, procedure functionality](/ap-comp-sci-p/frq-practice?id=69682496da185247e017c066&type=written-response-2)
- [Boolean expressions, logic errors, procedural parameters](/ap-comp-sci-p/frq-practice?id=696824b1da185247e017c067&type=written-response-2)
- [Boolean expressions, logic errors, list validation](/ap-comp-sci-p/frq-practice?id=696824c5da185247e017c068&type=written-response-2)
- [Boolean expressions, logic errors, list counting](/ap-comp-sci-p/frq-practice?id=696824dbda185247e017c069&type=written-response-2)
- [Boolean expressions, runtime errors, list handling](/ap-comp-sci-p/frq-practice?id=696824f6da185247e017c06a&type=written-response-2)
- [Boolean expressions, run-time errors, procedural abstraction](/ap-comp-sci-p/frq-practice?id=6968250bda185247e017c06b&type=written-response-2)
- [Boolean expressions, parameters, abstraction in code](/ap-comp-sci-p/frq-practice?id=6968251bda185247e017c06c&type=written-response-2)
- [Boolean expressions, run-time errors, list validation algorithms](/ap-comp-sci-p/frq-practice?id=6968253ada185247e017c06d&type=written-response-2)
- [Boolean expressions, run-time errors, list algorithms](/ap-comp-sci-p/frq-practice?id=6968254dda185247e017c06e&type=written-response-2)
- [Boolean expressions, procedure calls, list modifications](/ap-comp-sci-p/frq-practice?id=69682560da185247e017c06f&type=written-response-2)
- [Boolean expressions, conditionals, procedural abstraction](/ap-comp-sci-p/frq-practice?id=69682572da185247e017c070&type=written-response-2)
- [Boolean expressions and conditional procedure behavior](/ap-comp-sci-p/frq-practice?id=69682583da185247e017c071&type=written-response-2)
- [Boolean expressions, procedures, list validation algorithms](/ap-comp-sci-p/frq-practice?id=6968259bda185247e017c072&type=written-response-2)
- [Boolean expressions, procedure execution, list searching](/ap-comp-sci-p/frq-practice?id=696825b3da185247e017c073&type=written-response-2)
- [Boolean expressions, procedures, list processing logic](/ap-comp-sci-p/frq-practice?id=696825c8da185247e017c074&type=written-response-2)
- [Boolean expressions and procedure calls](/ap-comp-sci-p/frq-practice?id=696825d9da185247e017c075&type=written-response-2)
- [Boolean expressions, procedures, parameters, abstraction](/ap-comp-sci-p/frq-practice?id=696825f0da185247e017c076&type=written-response-2)
- [Boolean expressions, procedure calls, list validation algorithms](/ap-comp-sci-p/frq-practice?id=69682603da185247e017c077&type=written-response-2)
- [Boolean expressions, procedures, list iteration algorithms](/ap-comp-sci-p/frq-practice?id=6968261eda185247e017c078&type=written-response-2)
- [Boolean expressions, logic errors, list modifications](/ap-comp-sci-p/frq-practice?id=6968262fda185247e017c079&type=written-response-2)
- [Boolean expressions, logic errors, procedural abstraction](/ap-comp-sci-p/frq-practice?id=69682642da185247e017c07a&type=written-response-2)
- [Boolean expressions, logic errors, procedure parameters](/ap-comp-sci-p/frq-practice?id=69682658da185247e017c07b&type=written-response-2)
- [Boolean expressions, logic errors, list validation algorithms](/ap-comp-sci-p/frq-practice?id=6968266fda185247e017c07c&type=written-response-2)
- [Boolean expressions, logic errors, list algorithms](/ap-comp-sci-p/frq-practice?id=69682683da185247e017c07d&type=written-response-2)
- [Boolean expressions, logic errors, list operations](/ap-comp-sci-p/frq-practice?id=69682695da185247e017c07e&type=written-response-2)
- [Boolean expressions, logic errors, procedural abstraction](/ap-comp-sci-p/frq-practice?id=696826adda185247e017c07f&type=written-response-2)
- [Boolean expressions, logic errors, procedure parameters](/ap-comp-sci-p/frq-practice?id=696826c1da185247e017c080&type=written-response-2)
- [Boolean expressions, logic errors, list validation algorithms](/ap-comp-sci-p/frq-practice?id=696826deda185247e017c081&type=written-response-2)
- [Boolean expressions, logic errors, list algorithms](/ap-comp-sci-p/frq-practice?id=696826f2da185247e017c082&type=written-response-2)
- [Boolean expressions, run-time errors, list modifications](/ap-comp-sci-p/frq-practice?id=69682705da185247e017c083&type=written-response-2)
- [Boolean expressions, procedures, run-time errors](/ap-comp-sci-p/frq-practice?id=69682714da185247e017c084&type=written-response-2)
- [Boolean expressions, runtime errors, procedural parameters](/ap-comp-sci-p/frq-practice?id=69682724da185247e017c085&type=written-response-2)
- [Boolean expressions, runtime errors, list validation algorithms](/ap-comp-sci-p/frq-practice?id=69682738da185247e017c086&type=written-response-2)
- [Boolean expressions, runtime errors, list frequency counting](/ap-comp-sci-p/frq-practice?id=69682749da185247e017c087&type=written-response-2)
- [Boolean expressions, procedure calls, list processing](/ap-comp-sci-p/frq-practice?id=6968275eda185247e017c088&type=written-response-2)
- [Boolean expressions, conditional logic, code execution paths](/ap-comp-sci-p/frq-practice?id=69682772da185247e017c089&type=written-response-2)
- [Boolean expressions and procedure parameters in code](/ap-comp-sci-p/frq-practice?id=69682786da185247e017c08a&type=written-response-2)
- [Boolean expressions, conditional logic, procedure behavior](/ap-comp-sci-p/frq-practice?id=6968279cda185247e017c08b&type=written-response-2)
- [Boolean expressions, conditional execution, list traversal algorithms](/ap-comp-sci-p/frq-practice?id=696827b2da185247e017c08c&type=written-response-2)
- [Boolean expressions, procedures, list operations, code modification](/ap-comp-sci-p/frq-practice?id=696827c5da185247e017c08d&type=written-response-2)
- [Boolean expressions, procedure calls, encapsulation](/ap-comp-sci-p/frq-practice?id=696827d8da185247e017c08e&type=written-response-2)
- [Boolean expressions, procedures, parameter abstraction](/ap-comp-sci-p/frq-practice?id=696827f4da185247e017c08f&type=written-response-2)
- [Boolean expressions, procedures, list validation algorithms](/ap-comp-sci-p/frq-practice?id=6968280dda185247e017c090&type=written-response-2)
- [Boolean expressions, procedures, and list iteration](/ap-comp-sci-p/frq-practice?id=69682823da185247e017c091&type=written-response-2)
- [Conditional logic, Boolean expressions, procedure behavior](/ap-comp-sci-p/frq-practice?id=69682834da185247e017c092&type=written-response-2)
- [Conditional logic, Boolean expressions, procedures](/ap-comp-sci-p/frq-practice?id=69682846da185247e017c093&type=written-response-2)
- [Conditional logic, Boolean expressions, procedure parameters](/ap-comp-sci-p/frq-practice?id=69682860da185247e017c094&type=written-response-2)
- [Conditional logic, Boolean expressions, procedure behavior](/ap-comp-sci-p/frq-practice?id=69682872da185247e017c095&type=written-response-2)
- [Conditional logic, Boolean expressions, procedural behavior](/ap-comp-sci-p/frq-practice?id=69682888da185247e017c096&type=written-response-2)
- [Conditional logic, Boolean expressions, procedure behavior](/ap-comp-sci-p/frq-practice?id=69682899da185247e017c097&type=written-response-2)
- [Conditional logic, list operations, procedural abstraction](/ap-comp-sci-p/frq-practice?id=696828a8da185247e017c098&type=written-response-2)
- [Conditional logic, parameters, and procedural abstraction](/ap-comp-sci-p/frq-practice?id=696828bbda185247e017c099&type=written-response-2)
- [Conditional logic, code modification errors, list validation](/ap-comp-sci-p/frq-practice?id=696828cfda185247e017c09a&type=written-response-2)
- [Conditional logic, list iteration, value counting](/ap-comp-sci-p/frq-practice?id=696828e5da185247e017c09b&type=written-response-2)
- [Conditional logic, procedure errors, list processing](/ap-comp-sci-p/frq-practice?id=696828fada185247e017c09c&type=written-response-2)
- [Conditional logic, Boolean expressions, runtime errors](/ap-comp-sci-p/frq-practice?id=69682909da185247e017c09d&type=written-response-2)
- [Conditional logic, parameters, procedural abstraction](/ap-comp-sci-p/frq-practice?id=6968291cda185247e017c09e&type=written-response-2)
- [Conditional statements, Boolean expressions, runtime errors](/ap-comp-sci-p/frq-practice?id=6968292fda185247e017c09f&type=written-response-2)
- [Conditional logic, runtime errors, list searching algorithms](/ap-comp-sci-p/frq-practice?id=69682942da185247e017c0a0&type=written-response-2)
- [Conditional logic, procedures, list processing](/ap-comp-sci-p/frq-practice?id=69682956da185247e017c0a1&type=written-response-2)
- [Conditional logic, code execution paths, procedural abstraction](/ap-comp-sci-p/frq-practice?id=69682966da185247e017c0a2&type=written-response-2)
- [Conditional logic, Boolean expressions, procedure execution paths](/ap-comp-sci-p/frq-practice?id=69682978da185247e017c0a3&type=written-response-2)
- [Conditional statements, procedure execution, list validation algorithms](/ap-comp-sci-p/frq-practice?id=6968298dda185247e017c0a4&type=written-response-2)
- [Conditional logic, Boolean expressions, procedure behavior](/ap-comp-sci-p/frq-practice?id=696829a2da185247e017c0a5&type=written-response-2)
- [Conditional logic, procedures, list data structures](/ap-comp-sci-p/frq-practice?id=696829b1da185247e017c0a6&type=written-response-2)
- [Conditional logic, Boolean expressions, procedure behavior](/ap-comp-sci-p/frq-practice?id=696829c3da185247e017c0a7&type=written-response-2)
- [Conditional logic, Boolean expressions, procedure parameters](/ap-comp-sci-p/frq-practice?id=696829d4da185247e017c0a8&type=written-response-2)
- [Conditional logic, Boolean expressions, procedure outcomes](/ap-comp-sci-p/frq-practice?id=696829e6da185247e017c0a9&type=written-response-2)
- [Conditional logic, procedure outcomes, list iteration algorithms](/ap-comp-sci-p/frq-practice?id=69682a01da185247e017c0aa&type=written-response-2)

### Unit 4: Computer Systems and Networks (1)
- [A network technician examines a simplified receipt log for one message](/ap-comp-sci-p/frq-practice?id=6aab9a22579da02de752bd20&type=written-response-2)

### Unit 5: Impact of Computing (1)
- [A privacy dashboard helps an app user review requested permissions](/ap-comp-sci-p/frq-practice?id=6aab9a2375fc07920b46ab93&type=written-response-2)

## Sample question

**Test and explain a greeting-program prototype**

Early-unit written response practice: three short tasks using a supplied example program. This adapts tracing, testing, and data reasoning from the written-response task family. It does not assess the full Create/PPR requirements for lists, iteration, or student-developed procedures. No personal project, code file, or video is required.

A school club wants a sign-in kiosk to display a greeting containing the visitor’s entered name. The following program is its prototype. INPUT reads the entered text, ← assigns a value to a named variable, + joins text, and DISPLAY shows text on the screen. The visitor enters Maya.

```text
name ← INPUT()
message ← "Hello, " + name
DISPLAY(message)
```

Part A (1 point):
  Prompt: Describe the sequence of actions the program performs and identify its displayed output for the supplied input.

Part B (1 point):
  Prompt: Propose a different name as test input and state the exact expected output. Explain how this test checks the kiosk’s stated design requirement.

Part C (1 point):
  Prompt: Suppose the first line is changed to name ← "Maya" so that it no longer reads input. Explain one limitation this change would create for visitors other than Maya and why the original input variable avoids that limitation.

## Questions

**How many responses can I get scored?**

You can read every question without a plan. Your first scored response is included. A plan unlocks unlimited scoring.

**Do I need my own Create program?**

It helps, since the prompts ask about your list, your procedure, and your loops, as they do on the exam. Paste your own program code, or generate sample code to practice with.

**How is Written Response 2 different from Written Response 1?**

Written Response 1 is a single prompt about your program’s design, function, and purpose. Written Response 2 has three prompts on algorithms, testing, and abstraction.

**Are these real College Board questions?**

No. We wrote them in the AP format, with the same three prompt categories, and wrote scoring guidelines for each one.

**Can I write my answer by hand?**

Yes. Switch the editor to handwrite, write on paper, and add a photo of your page.

## Related

- [Written Response exam guide](/ap-comp-sci-p/ap-computer-science-principles-exam/performance-task/study-guide/ap-comp-sci-p-performance-task)
- [AP Computer Science Principles FRQs](/ap-comp-sci-p/frqs)
- Any question by id: the `get_frq` tool on the [Fiveable MCP server](/mcp/docs)

## About This Document

Canonical Fiveable pages are available as Markdown at the same path plus `.md`.

- [llms.txt](https://fiveable.me/llms.txt): index of Fiveable's sections and URL patterns
- [llms-full.txt](https://fiveable.me/llms-full.txt): complete subject and unit listing
- [MCP server](https://fiveable.me/mcp): call Fiveable as tools instead of fetching pages (`https://fiveable.me/api/mcp`)
- [MCP server for AP teachers](https://fiveable.me/mcp/teachers): a teacher's classes, assignments and AP-rubric grading (`https://fiveable.me/api/mcp/teacher`)
