Skip to main content

Written Response 1: Program design, function and purpose

Recycling game: purpose and function

  • Units 1 and 3
  • 1 point
  • About 15 minutes

One prompt about the program as a whole: for example, who the program is for and how its design meets that user's needs, what its inputs and outputs are, or what documentation would help another programmer understand a code segment. On the exam: Question 1 of 2 (1 point). Section II has 2 written-response questions (4 prompts) in 60 minutes, taken in Bluebook at the end-of-course exam; no calculator. On the real exam the questions are about your own Create performance task program, and you can see your Personalized Project Reference (screenshots of your procedure and list code). The Create task is 30% of the AP score, scored on 6 one-point rows: video, program requirements, WR1, WR2(a), WR2(b) and WR2(c). On this site you answer the same kinds of prompts about a short sample program given with the question.

The question and its sources

This written-response prompt is about the sample program below. On the exam you answer this kind of prompt about your own Create task program; here, answer about this program and refer to its code. Write in complete sentences.

About the program

This game is for elementary-school students who are learning to sort waste. It shows four items one at a time. After each item, the player types recycle or trash. The list recyclables holds the items that the town's recycling program accepts.

The procedure checkAnswer returns 1 if the player's choice is right and 0 if it isn't. The final score is displayed at the end.

Example: a player who types recycle, trash, recycle, trash sees can chip bag newspaper foam cup Score: 4.

Source: Sample program written for this practice question (hypothetical)

The procedure

Pseudocode
PROCEDURE checkAnswer(item, choice, recyclables)
{
    isRecyclable ← false
    FOR EACH r IN recyclables
    {
        IF(r = item)
        {
            isRecyclable ← true
        }
    }
    IF(isRecyclable)
    {
        correct ← "recycle"
    }
    ELSE
    {
        correct ← "trash"
    }
    IF(choice = correct)
    {
        RETURN(1)
    }
    RETURN(0)
}

Source: Sample program written for this practice question (hypothetical)

The main program

Pseudocode
recyclables ← ["can", "newspaper", "glass jar", "cardboard box"]
items ← ["can", "chip bag", "newspaper", "foam cup"]
score ← 0
FOR EACH item IN items
{
    DISPLAY(item)
    score ← score + checkAnswer(item, INPUT(), recyclables)
}
DISPLAY("Score:")
DISPLAY(score)

Source: Sample program written for this practice question (hypothetical)

Suggested time: 15 minutes

Your answers are saved in this browser as you type.

Something wrong with this question?

What's wrong?

Please don't include personal details.

Part (a)

1 point

Describe the purpose of this program. Then describe how the program's functionality, including at least one specific input and the output it leads to, serves that purpose.

0 / 2,500 characters

Checking scoring…

Scoring it yourself shows you the rubric, examples and a model answer. Try writing your answer first.