ap® computer science principles ... - the college board · pdf filecontents. ap computer...

28
AP ® Computer Science Principles ASSESSMENT OVERVIEW AND PERFORMANCE TASK DIRECTIONS FOR STUDENTS ective Fall 2017 ff E INCLUDES: Assessment overview Explore performance task directions Create performance task directions Exam reference sheet Scoring guidelines and notes

Upload: vuongkhuong

Post on 05-Mar-2018

223 views

Category:

Documents


3 download

TRANSCRIPT

AP® Computer Science PrinciplesASSESSMENT OVERVIEW AND PERFORMANCE TASK DIRECTIONS FOR STUDENTS

ective Fall 2017ffE

INCLUDES:Assessment overviewExplore performance task directionsCreate performance task directionsExam reference sheetScoring guidelines and notes

Contents

AP Computer Science Principles Assessment Overview for Students

1 Investigation and Citation

2 Programming Language Requirements

2 Peer-to-Peer Collaboration

3 Preparing for the Through-Course Performance Tasks

Performance Task: Explore – Impact of Computing Innovations

7 Preparing for the Explore Performance Task

8 Guidelines for Completing the Explore Performance Task

Performance Task: Create – Applications from Ideas

12 Preparing for the Create Performance Task

12 Guidelines for Completing the Create Performance Task

AP Computer Science Principles Exam Reference Sheet

Appendix: Explore and Create Scoring Guidelines and Notes

1

AP® Capstone Program Course and Exam Description

© 2017 The College Board

AP Computer Science Principles Handout

AP Computer Science Principles Assessment Overview for StudentsThe AP Computer Science Principles course has three assessments, consisting of two performance tasks and an end-of-course AP Exam. All three assessments are summative and will be used to calculate a final AP score (using the 1–5 scale) for AP Computer Science Principles.

Assessment Timing Percentage of Total AP Score

Explore Performance Task 8 hours 16%

Create Performance Task 12 hours 24%

End-of-Course Exam 2 hours 60%

Students who are completing the AP Computer Science Principles course in a nontraditional classroom situation (e.g., online, homeschool, independent study) should consult a school-based AP Coordinator for instructions on taking the AP Exam and submitting work for the performance tasks.

Investigation and CitationThe through-course performance tasks require you to create computational artifacts. A computational artifact is a visualization, a graphic, a video, a program, or an audio recording that you create using a computer. For the Create performance task, you will develop a computer program and for the Explore performance task, you will create a computational artifact of your choosing to represent or illustrate the intended purpose, function, or effect of a computing innovation using any computational tool(s) you wish.

In creating your computational artifact, you can create your own original work, including video, music, text, images, graphs, and program code. If you use external work to integrate into your computational artifact, you must acknowledge, attribute, and/or cite sources and include a bibliography with your submission. External work that should be acknowledged include video, music, text, images, graphs, and program code that are used in the creation of your computational artifacts.

2

AP® Capstone Program Course and Exam Description

© 2017 The College Board

AP Computer Science Principles Handout

AP Computer Science Principles Policy on Plagiarism

A student who fails to acknowledge (i.e., through citation, through attribution, by reference, and/or through acknowledgment in a bibliographic entry) the source or author of any and all information or evidence taken from the work of someone else will receive a score of 0 on that performance task.

To the best of their ability, teachers will ensure that students understand ethical use and acknowledgment of the ideas and work of others as well as the consequences of plagiarism. The student’s individual voice should be clearly evident, and the ideas of others must be acknowledged, attributed, and/or cited. A computational artifact without acknowledgment of the media used in the creation of the computational artifact, and program code segment(s) written by someone else used in a program without appropriate acknowledgment, are all considered plagiarized work.

Programming Language RequirementsAP Computer Science Principles is language agnostic. This means that there is no specific language requirement. When completing the Create – Applications from Ideas performance task for this course, you are allowed to select a language you feel is most appropriate to meet the requirements of the task. When selecting a language or program, you should review the requirements section of the performance task to ensure that your program will be sophisticated enough to implement mathematical and logical concepts, create abstractions, and implement algorithms.

Peer-to-Peer CollaborationCollaboration is only allowed on designated sub-components of the Create performance task.

For the Explore – Impact of Computing Innovations performance task, collaboration of any kind is not allowed.

For the Create – Applications from Ideas performance task, you are encouraged to collaborate on the development of their program with another student in your class. Collaboration is not allowed during the creation of the video or when answering the written responses.

Students completing AP Computer Science Principles in a nontraditional classroom situation (e.g., online, homeschool, independent study) are encouraged to collaborate with another student peer when completing the Create performance task.

3

AP® Capstone Program Course and Exam Description

© 2017 The College Board

AP Computer Science Principles Handout

Preparing for the Through-Course Performance TasksThe following guidelines are meant to help you be successful on the performance tasks as well as to clarify or address any questions you may have regarding the process of completing these tasks.

Prior to your teacher administering the performance tasks, you should:

▶ obtain content knowledge and skills that will help you succeed on the performance tasks;

▶ practice either an entire performance task or individual prompts of the tasks;

▶ review the scoring guidelines, found on AP Central, to understand how your work will be assessed;

▶ examine examples of performance task found on AP Central of submissions at high, medium, and low levels. If you select a computing innovation that is represented in one of the examples, or that was discussed in class, you must find new sources and submit original responses to avoid. You cannot submit any work from practice performance tasks.

▶ pay attention to the instructions concerning the size of the files to be uploaded; the computational artifact for the Explore performance task and the video for the Create performance task individually cannot exceed 30MB.

▶ ensure you know the proper way to evaluate and appropriately cite a source, including program code; any program code which has not been written by you must be cited and credit given to the author;

▶ understand the level of detail expected in writing your responses by examining the scoring guidelines and high level samples found on AP Central;

▶ understand that you may not revise your work once you have submitted your work as final to the AP Digital Portfolio; and

▶ be aware that the scoring process that occurs in the AP Reading may be different from the scoring process that occurs in your classroom; the AP score that you receive may be different than your classroom grade.

4

AP® Capstone Program Course and Exam Description

© 2017 The College Board

HandoutAP Computer Science Principles: Explore Performance Task

Performance Task: Explore – Impact of Computing Innovations

OverviewComputing innovations impact our lives in ways that require considerable study and reflection for us to fully understand them. In this performance task, you will explore a computing innovation of your choice. A computing innovation is an innovation that includes a computer or program code as an integral part of its functionality. Your close examination of this computing innovation will deepen your understanding of computer science principles.

Please note that once this performance task has been assigned as an assessment (rather than as practice), you are expected to complete the task with minimal assistance from anyone. For more clarification see the Guidelines for Completing the Through-Course Performance Tasks section.

You will be provided with a minimum of 8 hours of class time to develop, complete, and submit the following:

▶ A computational artifact

▶ Written responses

Scoring guidelines and instructions for submitting your performance tasks are available on the AP Computer Science Principles Course Home Page.

Note: Students in nontraditional classroom environments should consult a school-based AP Coordinator for submission instructions.

When completing the Explore – Impacts of Computing Innovations performance task, you will be expected to conduct investigations on a computing innovation. A computing innovation is an innovation that includes a computer or program code as an integral part of its functionality.

You must ensure you have identified relevant, credible, and easily accessible sources to support your creation of a computational artifact as well as to support your responses to the prompts. You can search for print or nonprint sources as part of your investigation. You can refer to a journal, Web page, or an expert that is being quoted as part of your written response. Avoid plagiarism by acknowledging, attributing, and/or citing sources throughout your responses.

General RequirementsThis performance task requires you to select and investigate a computational innovation to:

▶ analyze a computing innovations impact on society, economy, or culture and explain how this impact could be beneficial and/or harmful;

5

AP® Capstone Program Course and Exam Description

© 2017 The College Board

HandoutAP Computer Science Principles: Explore Performance Task

▶ explain how a computing innovation consumes, produces, or transforms data; and

▶ describe how data storage, data privacy, or data security concerns are raised based on the capabilities of the computing innovation.

You are also required to:

▶ investigate your computing innovation using a variety of sources (e.g., print, online, expert interviews);

▶ provide in-text citations of at least three different sources that helped you create your computational artifact and/or formulate your written responses;

› At least two of the sources must be available online or in print; your third source may be either online, in print, or a personal interview with an expert on the computing innovation.

› At least two of the sources must have been created after the end of the previous academic year.

▶ produce a computational artifact that illustrates, represents, or explains the computing innovation's intended purpose, its function, or its effect; and

▶ provide written responses to all the prompts in the performance task about your computational artifact and computing innovation.

Submission Requirements1. Computational Artifact

Your computational artifact must provide an illustration, representation, or explanation of the computing innovation’s intended purpose, its function, or its effect. The computational artifact must not simply repeat the information supplied in the written responses and should be primarily nontextual.

Submit a video, audio, or PDF file. Use computing tools and techniques to create one original computational artifact (a visualization, a graphic, a video, a program, or an audio recording). Acceptable multimedia file types include .mp3, .mp4, .wmv, .avi, .mov, .wav, .aif, or .pdf format. PDF files must not exceed three pages. Video or audio files must not exceed 1 minute in length and must not exceed 30MB in size.

2. Written Responses

Submit one PDF file in which you respond directly to each of the prompts below. Clearly label your responses 2a–2e in order. Your responses must provide evidence of the extensive knowledge you have developed about your chosen computing innovation and its impact(s). Write your responses so they would be understandable to someone who is not familiar with the computing innovation. Include citations, as applicable, within your written responses. Your response to prompts 2a–2d combined must not exceed 700 words. The references required in 2e are not included in the final word count.

6

AP® Capstone Program Course and Exam Description

© 2017 The College Board

Handout

Computational Artifact

2a. Provide information on your computing innovation and computational artifact.

w Name the computing innovation that is represented by your computational artifact.

w Describe the computing innovation’s intended purpose and function.

w Describe how your computational artifact illustrates, represents, or explains the computing innovation’s intended purpose, its function, or its effect.

(Must not exceed 100 words)

2b. Describe your development process, explicitly identifying the computing tools and techniques you used to create your artifact. Your description must be detailed enough so that a person unfamiliar with those tools and techniques will understand your process. (Must not exceed 100 words)

Computing Innovation

2c. Explain at least one beneficial effect and at least one harmful effect the computing innovation has had, or has the potential to have, on society, economy, or culture. (Must not exceed 250 words)

2d. Using specific details, describe:

w the data your innovation uses;

w how the innovation consumes (as input), produces (as output), and/or transforms data; and

w at least one data storage concern, data privacy concern, or data security concern directly related to the computing innovation.

(Must not exceed 250 words)

References

2e. Provide a list of at least three online or print sources used to create your computational artifact and/or support your responses through in-text citation to the prompts provided in this performance task.

w At least two of the sources must have been created after the end of the previous academic year.

w For each online source, include the complete and permanent URL. Identify the author, title, source, the date you retrieved the source, and, if possible, the date the reference was written or posted.

w For each print source, include the author, title of excerpt/article and magazine or book, page number(s), publisher, and date of publication.

If you include an interview source, include the name of the person you interviewed, the date on which the interview occurred, and the person’s position in the field.

w

w Include in-text citations for the sources you used.

w Each source must be relevant, credible, and easily accessed.

AP Computer Science Principles: Explore Performance Task

7

AP® Capstone Program Course and Exam Description

© 2017 The College Board

Handout

Preparing for the Explore Performance TaskPrior to your teacher administering this task, you should:

▶ understand that a computing innovation (i.e., an innovation that that includes a computer or program code as an integral part of its functionality) has a meaningful personal or community emphasis is an appropriate choice, as long as it fulfills the requirements to complete all the prompts in the performance task;

▶ practice searching and evaluating sources relevant to computing innovations; all sources cited must be relevant, credible, and easily accessible;

▶ practice clearly explaining the impact the intended use of a computing innovation has on society, economy, and culture, clearly justifying both beneficial and harmful effects;

▶ practice demonstrating your knowledge of computer science and understanding of how data is input, output, and transformed in your analysis of the data used by the computing innovation.

▶ practice making connections between the data used by a computing innovation and a security, privacy, or storage concern.

▶ obtain the meaning and purpose of creating a computational artifact; your creation must provide an illustration, representation, or explanation of the computing innovation’s intended purpose, its function, or its effect;

▶ have exposure to the use of a variety of computational tools that can be used to create effective computational artifacts;

▶ understand which computational artifacts would be considered effective and ineffective.

Effective artifacts include:

› visual, graphical, and/or audio content to help a reader understand the purpose, function, or effect of a computing innovation; and

› the use of communications media, such as animations, comic strips, infographics, and/or public service announcements, to illustrate the purpose, function, or effect of a computing innovation.

Ineffective artifacts include:

› artifacts that repeat information previously supplied in the written responses;

› multislide presentations with paragraphs of text or bullets;

› artifacts that have not been created by the student; and

› artifacts that focus on advertising the computing innovation’s functionality instead of the purpose of the innovation.

▶ practice writing responses based on relevant and credible sources and include in-text citations; and

▶ practice appropriate acknowledgment of sources used in the creation of your computational artifact.

AP Computer Science Principles: Explore Performance Task

8

AP® Capstone Program Course and Exam Description

© 2017 The College Board

Handout

Guidelines for Completing the Explore Performance TaskYou must:

▶ be aware of the performance task directions, timeline, and scoring criteria;

▶ support your written analysis of your computing innovation when responding to all the prompts by using details related to the knowledge and understanding of computer science you have obtained throughout the course and your investigation;

▶ provide evidence to support your claims using in-text citations;

▶ use relevant and credible sources to gather information about your computing innovation;

▶ provide acknowledgments for the use of any media or program code used in the creation of your computational artifact that is not your own; and

▶ allow your own interests to drive your choice of computing innovation and computational artifact.

You may:

▶ follow a timeline and schedule for completing the performance task;

▶ seek clarification from your teacher or AP Coordinator pertaining to the task, timeline, components, and scoring criteria;

▶ seek clarification from your teacher or AP Coordinator regarding submission requirements;

▶ as needed, seek assistance from your teacher or AP Coordinator in defining your focus and choice of topics; and

▶ seek assistance from your teacher or AP Coordinator to resolve technical problems that impede work, such as a failing workstation or difficulty with access to networks, or help with saving files or making movie files.

You may not:

▶ collaborate on the Explore performance task;

▶ submit work that has been revised, amended, or corrected by another individual;

▶ submit work from a practice performance task as your official submission to the College Board to be scored by the AP Program; or

▶ seek assistance or feedback on answers to prompts.

AP Computer Science Principles: Explore Performance Task

9

AP® Capstone Program Course and Exam Description

© 2017 The College Board

Handout

Performance Task: Create – Applications from Ideas

Overview Programming is a collaborative and creative process that brings ideas to life through the development of software. Programs can help solve problems, enable innovations, or express personal interests. In this performance task, you will be developing a program of your choice. Your development process should include iteratively designing, implementing, and testing your program. You are strongly encouraged to work with another student in your class.

Please note that once this performance task has been assigned as an assessment (rather than as practice), you are expected to complete the task with minimal assistance from anyone other than your collaborative peer(s). For more clarification see the Guidelines for Completing the Through-Course Performance Tasks section.

You will be provided with a minimum of 12 hours of class time to complete and submit the following:

▶ A video of your program running

▶ Individual written responses about your program and development process

▶ Program code

Scoring guidelines and instructions for submitting your performance tasks are available on the AP Computer Science Principles Course Home Page.

Note: Students in nontraditional classroom environments should consult a school-based AP Coordinator for instructions.

General RequirementsThis performance task requires you to develop a program on a topic that interests you or one that solves a problem. During the completion of this performance task, you will iteratively design, implement, and test your program. You will provide written responses to prompts about your program and specific program code that are significant to the functionality of your program. It is strongly recommended that a portion of the program involve some form of collaboration with another student in your class, for example, in the planning, designing, or testing (debugging) part of the development process. Your program development must also involve a significant amount of independent work writing your program code, in particular, algorithm(s) and abstraction(s) that you select to use as part of your written response to describe how the program code segments help your program run.

AP Computer Science Principles: Create Performance Task

10

AP® Capstone Program Course and Exam Description

© 2017 The College Board

HandoutAP Computer Science Principles: Create Performance Task

You are required to:

▶ independently develop an algorithm that integrates two or more algorithms and that is fundamental for your program to achieve its intended purpose;

▶ develop an abstraction that manages the complexity of your program;

▶ create a video that displays the running of your program and demonstrates its functionality;

▶ write responses to all the prompts in the performance task; and

▶ submit your entire program code.

Program RequirementsYour program must demonstrate a variety of capabilities and implement several different language features that, when combined, produce a result that cannot be easily accomplished without computing tools and techniques. Your program should draw upon mathematical and logical concepts, such as use of numbers, variables, mathematical expressions with arithmetic operators, logical and Boolean operators and expressions, decision statements, iteration, and/or collections.

Your program must demonstrate:

▶ use of several effectively integrated mathematical and logical concepts, from the language you are using;

▶ implementation of an algorithm that integrates two or more algorithms and integrates mathematical and/or logical concepts; and

▶ development and use of abstractions to manage the complexity of your program (e.g., procedures, abstractions provided by the programming language, APIs).

Submission Requirements1. Video

Submit one video in .mp4, .wmv, .avi, or .mov format that demonstrates the running of at least one significant feature of your program. Your video must not exceed 1 minute in length and must not exceed 30MB in size.

2. Written Responses

Submit one PDF file in which you respond directly to each prompt. Clearly label your responses 2a–2d in order. Your response to all prompts combined must not exceed 750 words, exclusive of the Program Code.

11

AP® Capstone Program Course and Exam Description

© 2017 The College Board

Program Purpose and Development

2a. Provide a written response or audio narration in your video that:

w identifies the programming language;

identifies the purpose of your program; andw

w explains what the video illustrates.

(Must not exceed 150 words)

2b. Describe the incremental and iterative development process of your program, focusing on two distinct points in that process. Describe the difficulties and/or opportunities you encountered and how they were resolved or incorporated. In your description clearly indicate whether the development described was collaborative or independent. At least one of these points must refer to independent program development. (Must not exceed 200 words)

2c. Capture and paste a program code segment that implements an algorithm (marked with an oval in section 3 below) and that is fundamental for your program to achieve its intended purpose. This code segment must be an algorithm you developed individually on your own, must include two or more algorithms, and must integrate mathematical and/or logical concepts. Describe how each algorithm within your selected algorithm functions independently, as well as in combination with others, to form a new algorithm that helps to achieve the intended purpose of the program. (Must not exceed 200 words)

2d. Capture and paste a program code segment that contains an abstraction you developed individually on your own (marked with a rectangle in section 3 below). This abstraction must integrate mathematical and logical concepts. Explain how your abstraction helped manage the complexity of your program. (Must not exceed 200 words)

3. Program Code

Capture and paste your entire program code in this section.

› Mark with an oval the segment of program code that implements the algorithm you created for your program that integrates other algorithms and integrates mathematical and/or logical concepts.

› Mark with a rectangle the segment of program code that represents an abstraction you developed.

› Include comments or acknowledgments for program code that has been written by someone else.

HandoutAP Computer Science Principles: Create Performance Task

12

AP® Capstone Program Course and Exam Description

© 2017 The College Board

Preparing for the Create Performance TaskPrior to your teacher administering this task, you should:

▶ Brainstorm problems that programming can address, or brainstorm special interests that programming can help develop;

▶ Ensure you understand the iterative nature of developing a computer program;

▶ Be prepared to collaborate with peers as necessary and in different ways;

▶ Ensure you are able to analyze program code and code segments and explain the function as it relates to the overall program;

▶ Know how to keep a programming journal of the design choices that you will make during the development of your program code and the effect of these decisions on the program’s function. You can use this journal as a point of reference when demonstrating your understanding of how:

› an algorithm was built as part of the integration of two or more algorithms;

› a program functions differently with the inclusion of algorithms and abstractions;

› the inclusion of an abstraction has made their program code more compact, readable and/or reusable and how the program would operate differently without the inclusion of the abstraction;

▶ obtain programming support as necessary while practicing the skills needed to complete the performance task.

Guidelines for Completing the Create Performance TaskYou must:

▶ be aware of the performance task directions, timeline, and scoring criteria;

▶ apply computer science knowledge you’ve obtained throughout the course when developing your program and in your explanation of its function;

▶ provide acknowledgment for program code used in your program that is not your own; and

▶ allow your own interests to drive your choice of program.

You may:

▶ follow a timeline and schedule for completing the performance task;

▶ seek clarification from your teacher or AP Coordinator pertaining to the task;

▶ seek clarification from your teacher or AP Coordinator regarding submission requirements;

HandoutAP Computer Science Principles: Create Performance Task

13

AP® Capstone Program Course and Exam Description

© 2017 The College Board

▶ as needed, seek assistance from your teacher or AP Coordinator in defining your focus or choice of topics;

▶ seek assistance from your teacher or AP Coordinator to resolve technical problems that impede work, such as a failing workstation or difficulty with access to networks, or help with saving files or making movie files;

▶ obtain assistance from your teacher or AP Coordinator with the formation of peer-to-peer collaboration when completing the Create performance task;

▶ seek assistance from your teacher or AP Coordinator in resolving collaboration issues where one partner is clearly and directly impeding the completion of the Create performance task; and

▶ seek guidance from your teacher or AP Coordinator to use and acknowledge APIs or other pieces of open-source code. Program code not written by you can be used in programs as long as you are extending the project in some new way. You should provide acknowledgment and credit from program code you did not write.

You may not:

▶ collaborate on the video or any of the written responses;

▶ submit work that has been revised, amended, or correct by another individual, with the exception of cited program code;

▶ submit work from a practice performance task as your official submission to the College Board to be scored by the AP Program; or

▶ seek assistance or feedback on answers to prompts.

HandoutAP Computer Science Principles: Create Performance Task

14

AP® Capstone Program Course and Exam Description

© 2017 The College Board

AP Computer Science Principles Exam Reference SheetAs AP Computer Science Principles does not designate any particular programming language, this reference sheet provides instructions and explanations to help students understand the format and meaning of the questions they will see on the exam. The reference sheet includes two programming formats: text based and block based.

Programming instructions use four data types: numbers, Booleans, strings, and lists.

Instructions from any of the following categories may appear on the exam:

▶ Assignment, Display, and Input

▶ Arithmetic Operators and Numeric Procedures

▶ Relational and Boolean Operators

▶ Selection

▶ Iteration

▶ List Operations

▶ Procedures

▶ Robot

AP Computer Science Principles Exam Reference Sheet

15

AP® Capstone Program Course and Exam Description

© 2017 The College Board

AP Computer Science Principles Exam Reference Sheet

Instruction ExplanationAssignment, Display, and Input

Text:a ← expression

Block:

Evaluates expression and assigns the result to the variable a.

Text:DISPLAY (expression)

Block:

Displays the value of expression, followed by a space.

Text:INPUT ()

Block:

Accepts a value from the user and returns it.

Arithmetic Operators and Numeric ProceduresText and Block:a + b a - b a * b a / b

The arithmetic operators +, -, *, and / are used to perform arithmetic on a and b.

For example, 3 / 2 evaluates to 1.5.

Text and Block:a MOD b

Evaluates to the remainder when a is divided by b. Assume that a and b are positive integers.

For example, 17 MOD 5 evaluates to 2.Text:RANDOM (a, b)

Block:

Evaluates to a random integer from a to b, including a and b.

For example, RANDOM (1, 3) could evaluate to 1, 2, or 3.

Relational and Boolean Operators Text and Block:a = b a ≠ b a > b a < b a ≥ b a ≤ b

The relational operators =, ≠, >, <, ≥, and ≤ are used to test the relationship between two variables, expressions, or values.

For example, a = b evaluates to true if a and b are equal; otherwise, it evaluates tofalse.

16

AP® Capstone Program Course and Exam Description

© 2017 The College Board

AP Computer Science Principles Exam Reference Sheet

Text:NOT condition

Block:

Evaluates to true if condition is false; otherwise evaluates to false.

Text:condition1 AND condition2

Block:

Evaluates to true if both condition1 and condition2 are true; otherwise, evaluates to false.

Text:condition1 OR condition2

Block:

Evaluates to true if condition1 is true or if condition2 is true or if both condition1 and condition2 are true; otherwise, evaluates to false.

SelectionText:IF (condition) { <block of statements> }

Block:

The code in block of statements is executed if the Boolean expression condition evaluates to true; no action is taken if condition evaluates to false.

Instruction ExplanationRelational and Boolean Operators (continued)

17

AP® Capstone Program Course and Exam Description

© 2017 The College Board

AP Computer Science Principles Exam Reference Sheet

Text:IF (condition) { <first block of statements> } ELSE { <second block of statements> }

Block:

The code in first block of statements is executed if the Boolean expression condition evaluates to true; otherwise, the code in second block of statements is executed.

Iteration Text:REPEAT n TIMES { <block of statements> }

Block:

The code in block of statements is executed n times.

Text:REPEAT UNTIL (condition) { <block of statements> }

Block:

The code in block of statements is repeated until the Boolean expression condition evaluates to true.

Instruction ExplanationSelection (continued)

18

AP® Capstone Program Course and Exam Description

© 2017 The College Board

Instruction ExplanationList Operations

AP Computer Science Principles Exam Reference Sheet

For all list operations, if a list index is less than 1 or greater than the length of the list, an error message is produced and the program terminates.Text:list[i]

Block:

Refers to the element of list at index i. The first element of list is at index 1.

Text:list[i] ← list[j]

Block:

Assigns the value of list[j] to list[i].

Text:list ← [value1, value2, value3]

Block:

Assigns value1, value2, and value3 to list[1], list[2], and list[3], respectively.

Text:FOR EACH item IN list { <block of statements> }

Block:

The variable item is assigned the value of each element of list sequentially, in order from the first element to the last element. The code in block of statements is executed once for each assignment of item.

Text:INSERT (list, i, value)

Block:

Any values in list at indices greater than or equal to i are shifted to the right. The length of list is increased by 1, and value is placed at index i in list.

Text:APPEND (list, value)

Block:

The length of list is increased by 1, and value is placed at the end of list.

19

AP® Capstone Program Course and Exam Description

© 2017 The College Board

Text:REMOVE (list, i)

Block:

Removes the item at index i in list and shifts to the left any values at indices greater than i. The length of list is decreased by 1.

Text:LENGTH (list)

Block:

Evaluates to the number of elements in list.

Procedures Text:PROCEDURE name ( parameter1,

parameter2, ...){ <instructions> }

Block:

A procedure, name, takes zero or more parameters. The procedure contains programming instructions.

Text:PROCEDURE name ( parameter1,

parameter2, ...){ <instructions>

RETURN (expression)}

Block:

A procedure, name, takes zero or more parameters. The procedure contains programming instructions and returns the value of expression. The RETURN statement may appear at any point inside the procedure and causes an immediate return from the procedure back to the calling program.

Instruction ExplanationList Operations (continued)

AP Computer Science Principles Exam Reference Sheet

20

AP® Capstone Program Course and Exam Description

© 2017 The College Board

Instruction ExplanationRobot

AP Computer Science Principles Exam Reference Sheet

If the robot attempts to move to a square that is not open or is beyond the edge of the grid, the robot will stay in its current location and the program will terminate.Text:MOVE_FORWARD ()

Block:

The robot moves one square forward in the direction it is facing.

Text:ROTATE_LEFT ()

Block:

The robot rotates in place 90 degrees counterclockwise (i.e., makes an in-place left turn).

Text:ROTATE_RIGHT ()

Block:

The robot rotates in place 90 degrees clockwise (i.e., makes an in-place right turn).

Text:CAN_MOVE (direction)

Block:

Evaluates to true if there is an open square one square in the direction relative to where the robot is facing; otherwise evaluates to false. The value of direction can be left, right, forward, or backward.

21

AP® Capstone Program Course and Exam Description

© 2017 The College Board

AP Computer Science Principles

Appendix: Explore and Create Scoring Guidelines and Notes

22© 2017 The College Board

AP

® C

om

pu

ter

Sci

ence

Pri

nci

ple

s —

Exp

lore

Per

form

ance

Task

20

18 S

cori

ng

Gu

idel

ines

an

d N

ote

sRe

porti

ng

Cate

gory

Task

Scor

ing

Crite

riaD

ecis

ion

Rule

sSc

orin

g N

otes

Row

1

Usi

ng

Dev

elop

men

t Pr

oces

ses

and

Tool

s

COM

P.

ART

IFA

CTTh

e co

mpu

tatio

nal

artif

act:

• Id

entifi

es th

e

com

putin

g

inno

vatio

n.

AN

D•

Prov

ides

an

ill

ustr

ation

, re

pres

enta

tion,

or

ex

plan

ation

of t

he

com

putin

g

inno

vatio

n’s

inte

nded

pu

rpos

e, fu

nctio

n, o

r

effec

t.

The

wri

tten

resp

onse

can

be

used

to a

id th

e un

ders

tand

ing

of h

ow th

e co

mpu

tatio

nal

artif

act i

llust

rate

s, re

pres

ents

, or

expl

ains

the

com

putin

g in

nova

tion’

s in

tend

ed p

urpo

se,

func

tion,

or

effec

t.

Do

NO

T aw

ard

a po

int i

f any

one

of t

he fo

llow

ing

is tr

ue:

• th

ere

is n

o ar

tifac

t;•

the

artif

act i

s no

t a c

ompu

tatio

nal a

rtifa

ct;

• th

e in

nova

tion

iden

tified

in th

e ar

tifac

t do

es n

ot m

atch

the

inno

vatio

n de

scrib

ed in

th

e w

ritten

resp

onse

;•

the

artif

act d

oes

not i

denti

fy th

e in

nova

tion

clea

rly;

• th

e ar

tifac

t doe

s no

t illu

stra

te, r

epre

sent

or

expl

ain

the

inno

vatio

n’s

inte

nded

pu

rpos

e, fu

nctio

n, o

r eff

ect;

• th

e ar

tifac

t illu

stra

tes

a fe

atur

e of

the

inno

vatio

n in

stea

d of

the

purp

ose,

func

tion,

or

effe

ct; o

r•

the

wri

tten

resp

onse

des

crib

es th

e in

nova

tion’

s in

tend

ed p

urpo

se a

nd fu

nctio

n

with

out e

xpla

inin

g ho

w th

e co

mpu

tatio

nal a

rtifa

ct il

lust

rate

s, re

pres

ents

, or

ex

plai

ns th

e in

tend

ed p

urpo

se, f

uncti

on, o

r eff

ect.

• A

com

puta

tiona

l arti

fact

is s

omet

hing

cre

ated

by

a hu

man

usi

ng a

co

mpu

ter

and

can

be, b

ut is

not

lim

ited

to, a

pro

gram

, an

imag

e,

an a

udio

, a v

ideo

, a p

rese

ntati

on, o

r a

Web

pag

e fil

e. T

he

com

puta

tiona

l arti

fact

cou

ld s

olve

a p

robl

em, s

how

cre

ative

ex

pres

sion

, or

prov

ide

a vi

ewer

with

new

insi

ght o

r kn

owle

dge.

• A

com

putin

g in

nova

tion

is a

n in

nova

tion

that

incl

udes

a c

ompu

ter

or p

rogr

am c

ode

as a

n in

tegr

al p

art o

f its

func

tiona

lity.

Row

2

Ana

lyzi

ng

Impa

ct o

f Co

mpu

ting

RESP

ON

SE

2A•

Stat

es a

fact

abo

ut

the

corr

ectly

id

entifi

ed c

ompu

ting

in

nova

tion’

s in

tend

ed

purp

ose

OR

func

tion.

Do

NO

T aw

ard

a po

int i

f:•

the

iden

tified

inno

vatio

n is

not

a c

ompu

ting

inno

vatio

n; o

r•

the

writt

en s

tate

men

t giv

es a

n eff

ect (

whi

ch is

requ

ired

for t

he s

corin

g cr

iteria

in

Row

3, n

ot R

ow 2

).

• A

com

putin

g in

nova

tion

is a

n in

nova

tion

that

incl

udes

a c

ompu

ter

or

pro

gram

cod

e as

an

inte

gral

par

t of i

ts fu

nctio

nalit

y.•

Com

putin

g in

nova

tions

may

be

phys

ical

com

putin

g in

nova

tions

su

ch a

s G

oogl

e gl

asse

s or

sel

f-dr

ivin

g ca

rs, n

on-p

hysi

cal c

ompu

ter

so

ftw

are

like

a ce

ll ph

one

app,

or

c om

putin

g co

ncep

ts s

uch

as

e-co

mm

erce

or

soci

al n

etw

orki

ng w

hich

rely

on

phys

ical

tr

ansa

ction

s co

nduc

ted

on th

e In

tern

et.

• Pu

rpos

e m

eans

the

inte

nded

goa

l or

obje

ctive

of t

he in

nova

tion.

• Fu

nctio

n m

eans

how

the

inno

vatio

n w

orks

(e.g

., co

nsum

es a

nd

prod

uces

dat

a).

Row

3

Ana

lyzi

ng

Impa

ct o

f Co

mpu

ting

RESP

ON

SE2C

• Id

entifi

es a

t lea

st

ON

E eff

ect o

f the

id

entifi

ed o

r

desc

ribe

d co

mpu

ting

in

nova

tion.

The

effec

t doe

s no

t nee

d to

be

spec

ifica

lly id

entifi

ed a

s be

nefic

ial o

r ha

rmfu

l.

The

effec

t mus

t be

iden

tified

, but

it d

oesn

’t h

ave

to b

e de

scri

bed

to e

arn

the

poin

t.

Do

NO

T aw

ard

a po

int i

f any

one

of t

he fo

llow

ing

is tr

ue:

• th

e de

scri

bed

inno

vatio

n is

not

a c

ompu

ting

inno

vatio

n;

• th

e re

spon

se d

oes

not s

tate

an

effec

t (Th

e pu

rpos

e or

func

tion

of th

e co

mpu

ting

inno

vatio

n is

not

the

effec

t of t

he in

nova

tion.

); or

• th

e id

entifi

ed e

ffect

is n

ot a

resu

lt of

the

use

of th

e in

nova

tion

as in

tend

ed (e

.g.,

a

self-

driv

ing

car i

s no

t int

ende

d to

cra

sh, t

here

fore

, its

exp

osur

e to

hac

king

is n

ot a

n eff

ect o

f its

inte

nded

use

).

• •

An

effec

t may

be

an im

pact

, res

ult,

out

com

e, e

tc.

Row

4

Ana

lyzi

ng

Impa

ct o

f Co

mpu

ting

RESP

ON

SE

2C•

Iden

tifies

a b

enefi

cial

eff

ect o

f the

id

entifi

ed o

r

desc

ribe

d co

mpu

ting

in

nova

tion.

AN

D•

Iden

tifies

a h

arm

ful

effec

t of t

he

iden

tified

or

de

scri

bed

com

putin

g in

nova

tion.

Resp

onse

s th

at e

arn

this

poi

nt w

ill a

lso

earn

the

poin

t for

Row

3.

Resp

onse

s sh

ould

be

eval

uate

d on

the

ratio

nale

pro

vide

d in

the

resp

onse

not

on

the

inte

rpre

tatio

n or

infe

renc

e on

the

part

of t

he s

core

r.

Do

NO

T aw

ard

a po

int i

f any

one

of t

he fo

llow

ing

is tr

ue:

• th

e de

scri

bed

inno

vatio

n is

not

a c

ompu

ting

inno

vatio

n;

• th

e re

spon

se is

mis

sing

the

adje

ctive

s ha

rmfu

l or

bene

ficia

l (or

syn

onym

s th

ereo

f);

• th

e re

spon

se is

mis

sing

a p

laus

ible

ben

efici

al e

ffect

;•

the

resp

onse

is m

issi

ng a

pla

usib

le h

arm

ful e

ffect

; or

• th

e id

entifi

ed e

ffect

is n

ot a

resu

lt of

the

use

of th

e in

nova

tion

as in

tend

ed (e

.g.,

a

self-

driv

ing

car

is n

ot in

tend

ed to

cra

sh, t

here

fore

, its

exp

osur

e to

hac

king

is n

ot a

n eff

ect o

f its

inte

nded

use

).

An

effec

t may

be

an im

pact

, res

ult,

out

com

e, e

tc.

Bene

ficia

l and

/or

harm

ful e

ffect

s ar

e co

ntex

tual

and

inte

rpre

tive;

id

entifi

catio

n in

clud

es b

oth

the

clas

sific

ation

of t

he e

ffect

as

bene

ficia

l or

harm

ful a

nd ju

stific

ation

for

that

cla

ssifi

catio

n.

AP Computer Science Principles

AP Computer Science Principles

23© 2017 The College Board

Repo

rting

Ca

tego

ryTa

skSc

orin

g Cr

iteria

Dec

isio

n Ru

les

Scor

ing

Not

es

Row

5

Ana

lyzi

ng

Impa

ct o

f Co

mpu

ting

RESP

ON

SE

2C•

Expl

ains

how

ON

E of

th

e id

entifi

ed e

ffect

s re

late

s to

soc

iety

, ec

onom

y, o

r cu

lture

.

Resp

onse

s th

at e

arn

the

poin

t for

this

row

mus

t hav

e ea

rned

the

poin

t for

Row

3.

Resp

onse

s sh

ould

be

eval

uate

d on

the

ratio

nale

pro

vide

d in

the

resp

onse

not

on

the

inte

rpre

tatio

n or

infe

renc

e on

the

part

of t

he s

core

r.

Do

NO

T aw

ard

a po

int i

f any

one

of t

he fo

llow

ing

is tr

ue:

• th

e de

scri

bed

inno

vatio

n is

not

a c

ompu

ting

inno

vatio

n; o

r •

the

expl

anati

on d

oes

not c

onne

ct o

ne o

f the

effe

cts

to s

ocie

ty, e

cono

my,

or

cu

lture

.

• Eff

ects

nee

d to

be

rela

ted

to s

ocie

ty, e

cono

my,

or

cultu

re a

nd

need

to b

e co

nnec

ted

to a

gro

up o

r in

divi

dual

s. E

xam

ples

in

clud

e bu

t are

not

lim

ited

to:

• Th

e in

nova

tion

and

impa

ct o

f soc

ial m

edia

onl

ine

acce

ss

vari

es in

diff

eren

t cou

ntri

es a

nd in

diff

eren

t soc

ioec

onom

ic

grou

ps (E

K 7.

4.1A

)•

Mob

ile, w

irele

ss, a

nd n

etw

orke

d co

mpu

ting

have

an

impa

ct

on in

nova

tion

thro

ugho

ut th

e w

orld

(EK

7.4.

1B)

• Th

e gl

obal

dis

trib

ution

of c

ompu

ting

reso

urce

s ra

ises

issu

es

of e

quity

, acc

ess

and

pow

er (E

K 7.

4.1C

)•

Gro

ups

and

indi

vidu

als

are

affec

ted

by th

e “d

igita

l div

ide”

(E

K 7.

4.1D

)•

Net

wor

ks a

nd in

fras

truc

ture

are

sup

port

ed b

y bo

th

com

mer

cial

and

gov

ernm

enta

l ini

tiativ

es (E

K 7.

4.1E

)

Row

6

Ana

lyzi

ng

Dat

a an

d In

form

ation

RESP

ON

SE

2D•

Iden

tifies

the

data

th

at th

e id

entifi

ed o

r

desc

ribe

d co

mpu

ting

in

nova

tion

uses

AN

D•

Expl

ains

how

that

da

ta is

con

sum

ed,

prod

uced

, OR

tr

ansf

orm

ed.

Resp

onse

s sh

ould

be

eval

uate

d on

the

ratio

nale

pro

vide

d in

the

resp

onse

not

on

the

inte

rpre

tatio

n or

infe

renc

e on

the

part

of t

he s

core

r.

Do

NO

T aw

ard

a po

int i

f any

one

of t

he fo

llow

ing

is tr

ue:

• th

e de

scri

bed

inno

vatio

n is

not

a c

ompu

ting

inno

vatio

n;

• th

e re

spon

se d

oes

not s

tate

the

spec

ific

nam

e of

the

data

or s

impl

y sa

ys “

data

”;•

the

resp

onse

con

fuse

s or

con

flate

s th

e in

nova

tion

with

the

data

: res

pons

e fa

ils to

ex

plai

n w

hat h

appe

ns to

the

data

; or

• th

e re

spon

se c

onfu

ses

the

sour

ce o

f the

dat

a w

ith th

e da

ta.

• D

ata

type

s in

clud

e: in

tege

rs, n

umbe

rs, B

oole

ans,

text

, im

age,

vi

deo,

aud

io, s

igna

ls. D

ata

that

infe

r th

ese

type

s lik

e

finge

rpri

nts,

tem

pera

ture

, mus

ic, l

engt

h, p

ictu

res,

etc

. are

al

low

ed.

• D

ata

colle

ction

dev

ices

(e.g

. sen

sors

, cam

eras

, etc

.) ar

e no

t dat

a.La

rge

data

set

s in

clud

e da

ta s

uch

as tr

ansa

ction

s,

mea

sure

men

ts, t

exts

, sou

nds,

imag

es, a

nd v

ideo

s. (E

K 3.

2.2A

)•

Row

7

Ana

lyzi

ng

Dat

a an

d In

form

ation

RESP

ON

SE

2D•

Iden

tify

one

data

st

orag

e, d

ata

priv

acy,

O

R da

ta s

ecur

ity

conc

ern

rela

ted

to

the

iden

tified

or

desc

ribe

d co

mpu

ting

in

nova

tion.

Resp

onse

s sh

ould

be

eval

uate

d on

the

ratio

nale

pro

vide

d in

the

resp

onse

not

on

the

in

terp

reta

tion

or in

fere

nce

on th

e pa

rt o

f the

sco

rer.

Resp

onse

s ca

n ea

rn th

is p

oint

eve

n if

they

refe

r to

the

data

in a

gen

eral

with

out s

peci

fical

ly

iden

tifyi

ng th

e da

ta b

eing

use

d.

Do

NO

T aw

ard

a po

int i

f any

one

of t

he fo

llow

ing

is tr

ue:

• th

e de

scri

bed

inno

vatio

n is

not

a c

ompu

ting

inno

vatio

n; o

r •

the

resp

onse

iden

tifies

or

desc

ribe

s a

conc

ern

that

is n

ot re

late

d to

dat

a.

Row

8

Find

ing

and

Eval

uati

ng

Info

rmati

on

RESP

ON

SE

2E &

A

RTIF

ACT

/ W

RITT

EN

RESP

ON

SE

• Re

fere

nces

, th

roug

h in

-tex

t ci

tatio

n, a

t lea

st 3

di

ffere

nt s

ourc

es.

The

in-t

ext c

itatio

ns c

an b

e in

eith

er th

e ar

tifac

t or

the

wri

tten

resp

onse

.

The

in-t

ext c

itatio

ns m

ay b

e or

al in

the

com

puta

tiona

l arti

fact

.

Do

NO

T aw

ard

a po

int i

f any

one

of t

he fo

llow

ing

is tr

ue:

• th

e re

spon

se c

onta

ins

a lis

t of s

ourc

es o

nly,

no

in-t

ext c

itatio

ns;

• th

e re

spon

se c

onta

ins

less

than

thre

e in

-tex

t cita

tions

; or

• th

ere

are

few

er th

an th

ree

sour

ces

cite

d, e

ven

if th

ere

are

thre

e or

mor

e in

-tex

tci

tatio

ns.

• In

-tex

t cita

tions

may

be

prov

ided

in a

ny w

ay th

at a

ckno

wle

dges

th

e so

urce

:•

“Acc

ordi

ng to

. . .

” or

“As

wri

tten

in th

e N

ew Y

ork

Tim

es .

. .”

• Pa

rent

hetic

al•

Foot

note

s•

Num

eric

al s

uper

scri

pts

with

cor

resp

ondi

ng fo

otno

te•

Num

ber

syst

em w

ith a

cor

resp

ondi

ng re

fere

nce

24© 2017 The College Board

AP Computer Science Principles

AP

® C

om

pu

ter

Sci

ence

Pri

nci

ple

s —

Cre

ate

Perf

orm

ance

Task

20

18 S

cori

ng

Gu

idel

ines

an

d N

ote

sRe

porti

ng

Cate

gory

Task

Scor

ing

Crite

riaD

ecis

ion

Rule

sSc

orin

g N

otes

Row

1

Dev

elop

ing

a Pr

ogra

m w

ith

a Pu

rpos

e

VID

EO &

RE

SPO

NSE

2A

• Th

e vi

deo

dem

onst

rate

s th

e

runn

ing

of a

t lea

st o

ne fe

atur

e of

th

e pr

ogra

m s

ubm

itted

.A

ND

• Th

e re

spon

se (a

udio

nar

ratio

n or

w

ritt

en re

spon

se) i

denti

fies

the

pu

rpos

e of

the

prog

ram

(wha

t the

pr

ogra

m is

att

empti

ng to

do)

.

Resp

onse

ear

ns th

e po

int i

f it e

xpla

ins

the

func

tion

of th

e pr

ogra

m in

stea

d of

iden

tifyi

ng

the

purp

ose.

Resp

onse

ear

ns th

e po

int i

f the

illu

stra

ted

feat

ure

runs

, eve

n if

it do

es n

ot fu

nctio

n as

in

tend

ed.

Resp

onse

ear

ns th

e po

int i

f the

vid

eo in

clud

es a

nar

ratio

n or

som

e fo

rm o

f clo

sed

ca

ption

ing

that

add

ress

es th

e pu

rpos

e of

the

prog

ram

.

Do

NO

T aw

ard

a po

int i

f any

one

of t

he fo

llow

ing

is tr

ue:

• a

vide

o is

not

sub

mitt

ed;

• th

e vi

deo

does

not

illu

stra

te th

e fe

atur

e m

entio

ned

in th

e re

spon

se; o

r•

the

vide

o do

es n

ot il

lust

rate

the

runn

ing

of th

e fe

atur

e (s

cree

n sh

ots

or

stor

yboa

rds

are

not a

ccep

tabl

e an

d w

ould

not

be

cred

ited)

.

• Pu

rpos

e m

eans

the

inte

nded

goa

l or

obje

ctive

of

the

prog

ram

.•

Func

tion

mea

ns h

ow th

e pr

ogra

m w

orks

.

Row

2

Dev

elop

ing

a Pr

ogra

m w

ith

a Pu

rpos

e

RESP

ON

SE

2B•

Des

crib

es o

r ou

tline

s st

eps

used

in

the

incr

emen

tal a

nd it

erati

ve

deve

lopm

ent p

roce

ss to

cre

ate

the

en

tire

prog

ram

.

Do

NO

T aw

ard

a po

int i

f any

one

of t

he fo

llow

ing

is tr

ue:

• th

e re

spon

se d

oes

not i

ndic

ate

itera

tive

deve

lopm

ent;

• re

finem

ent a

nd re

visi

on a

re n

ot c

onne

cted

to fe

edba

ck, t

estin

g, o

r re

flecti

on; o

r•

the

resp

onse

onl

y de

scri

bes

the

deve

lopm

ent a

t tw

o sp

ecifi

c po

ints

in ti

me.

• D

evel

opm

ent p

roce

sses

are

iter

ative

and

cy

clic

al in

nat

ure

and

requ

ire s

tude

nts

to

refle

ct A

ND

impr

ove

on w

hat t

hey

have

cr

eate

d. E

xam

ples

of i

tera

tive

deve

lopm

ent

coul

d in

clud

e re

flecti

on, r

evis

ion,

testi

ng a

nd

refin

ing,

and

impr

ovem

ents

bas

ed o

n fe

edba

ck.

• Th

e in

crem

enta

l and

iter

ative

dev

elop

men

t pr

oces

s do

es n

ot n

eed

to b

e a

form

al m

etho

d

such

as

wat

erfa

ll, to

p —

dow

n, b

ottom

-up,

ag

ile, e

tc.

Row

3

Dev

elop

ing

a Pr

ogra

m w

ith

a Pu

rpos

e

RESP

ON

SE

2B•

Spec

ifica

lly id

entifi

es a

t lea

st tw

o

prog

ram

dev

elop

men

t diffi

culti

es

or o

ppor

tuni

ties. AN

D•

Des

crib

es h

ow th

e tw

o id

entifi

ed

diffi

culti

es o

r op

port

uniti

es a

re

reso

lved

or

inco

rpor

ated

.

Resp

onse

ear

ns th

e po

int i

f it i

denti

fies

two

oppo

rtun

ities

, or

two

diffi

culti

es, o

r on

e op

port

unity

and

one

diffi

culty

AN

D d

escr

ibes

how

eac

h is

reso

lved

or

inco

rpor

ated

.

Do

NO

T aw

ard

a po

int i

f any

one

of t

he fo

llow

ing

is tr

ue:

• on

ly o

ne d

istin

ct d

ifficu

lty o

r op

port

unity

in th

e pr

oces

s is

iden

tified

and

de

scri

bed;

or

• th

e re

spon

se d

oes

not d

escr

ibe

how

the

diffi

culti

es o

r op

port

uniti

es w

ere

reso

lved

or

inco

rpor

ated

.

Row

4

App

lyin

g A

lgor

ithm

s

COD

E SE

GM

ENT

IN

RESP

ON

SE

2C

• Se

lect

ed c

ode

segm

ent i

mpl

emen

ts

an a

lgor

ithm

.D

o N

OT

awar

d a

poin

t if a

ny o

ne o

f the

follo

win

g is

true

:•

the

algo

rith

m c

onsi

sts

of a

sin

gle

inst

ructi

on;

• th

e co

de s

egm

ent c

onsi

sting

of t

he a

lgor

ithm

is n

ot in

clud

ed in

the

wri

tten

re

spon

ses

secti

on o

r is

not

exp

licitl

y id

entifi

ed in

the

prog

ram

cod

e se

ction

; or

• th

e al

gori

thm

is n

ot e

xplic

itly

iden

tified

(i.e

., th

e en

tire

prog

ram

is s

elec

ted

as a

n al

gori

thm

, with

out e

xplic

itly

iden

tifyi

ng th

e co

de s

egm

ent c

onta

inin

g th

e

algo

rith

m).

• A

lgor

ithm

s ar

e pr

ecis

e se

quen

ces

of

inst

ructi

ons

for

proc

esse

s th

at c

an b

e ex

ecut

ed

by a

com

pute

r an

d ar

e im

plem

ente

d us

ing

pr

ogra

mm

ing

lang

uage

s. (E

U 4

.1)

• A

lgor

ithm

s m

ake

use

of s

eque

ncin

g, s

elec

tion

or

iter

ation

. (EK

4.1

.1A

)

25© 2017 The College Board

AP Computer Science Principles

Repo

rting

Ca

tego

ryTa

skSc

orin

g Cr

iteria

Dec

isio

n Ru

les

Scor

ing

Not

es

Row

5

App

lyin

g A

lgor

ithm

s

RESP

ON

SE

2C•

Sele

cted

cod

e se

gmen

t im

plem

ents

an

alg

orith

m th

at u

ses

m

athe

mati

cal o

r lo

gica

l con

cept

s.A

ND

• Ex

plai

ns h

ow th

e se

lect

ed

algo

rith

m fu

nctio

ns.

AN

D•

Des

crib

es w

hat t

he s

elec

ted

al

gori

thm

doe

s in

rela

tion

to th

e

over

all p

urpo

se o

f the

pro

gram

.•

The

algo

rith

m b

eing

des

crib

ed c

an u

tiliz

e ex

istin

g la

ngua

ge fu

nctio

nalit

y, o

r lib

rary

cal

ls.

Resp

onse

ear

ns th

e po

int e

ven

if th

e al

gori

thm

was

not

new

ly d

evel

oped

. (i.e

., a

stud

ent’s

re

impl

emen

tatio

n of

the

algo

rith

m to

find

the

min

imum

val

ue)

Do

NO

T aw

ard

a po

int i

f any

one

of t

he fo

llow

ing

is tr

ue:

• th

e se

lect

ed a

lgor

ithm

con

sist

s of

a s

ingl

e in

stru

ction

;•

the

sele

cted

alg

orith

m c

onsi

sts

sole

ly o

f lib

rary

cal

ls to

exi

sting

lang

uage

fu

nctio

nalit

y;th

e se

lect

ed a

lgor

ithm

doe

s no

t inc

lude

mat

hem

atica

l or

logi

cal c

once

pts;

• th

e re

spon

se o

nly

desc

ribe

s w

hat t

he s

elec

ted

algo

rith

m d

oes

with

out e

xpla

inin

g ho

w it

doe

s it;

• th

e re

spon

se d

oes

not e

xplic

itly

addr

ess

the

prog

ram

’s p

urpo

se;

• th

e co

de s

egm

ent c

onsi

sting

of t

he s

elec

ted

algo

rith

m is

not

incl

uded

in th

e

wri

tten

resp

onse

s se

ction

or

is n

ot e

xplic

itly

iden

tified

in th

e pr

ogra

m c

ode

se

ction

; or

• th

e al

gori

thm

is n

ot e

xplic

itly

iden

tified

(i.e

., th

e en

tire

prog

ram

is s

elec

ted

as a

n

algo

rith

m, w

ithou

t exp

licitl

y id

entif

ying

the

code

seg

men

t con

tain

ing

the

al

gori

thm

).

• Se

e Ro

w 4

defi

nitio

ns a

nd c

urri

culu

m

fram

ewor

k al

ignm

ent.

• M

athe

mati

cal c

once

pts

incl

ude

mat

hem

atica

l ex

pres

sion

s us

ing

arith

meti

c op

erat

ors

and

mat

hem

atica

l fun

ction

s. (E

K 5.

5.1.

D)

• Lo

gica

l con

cept

s in

clud

e Bo

olea

n al

gebr

a an

d co

mpo

und

expr

essi

ons.

(EK

5.5.

1E a

nd 5

.5.1

F)•

Iter

ation

is th

e re

petiti

on o

f par

t of a

n

algo

rith

m u

ntil a

con

ditio

n is

met

or

for

a

spec

ified

num

ber

of ti

mes

. (EK

4.1

.1D

)•

Sele

ction

use

s a

Bool

ean

cond

ition

to

dete

rmin

e w

hich

of t

wo

part

s of

an

algo

rith

m is

us

ed. (

EK 4

.1.1

C)•

Iter

ation

is th

e re

petiti

on o

f par

t of a

n

algo

rith

m u

ntil a

con

ditio

n is

met

or

for

a

spec

ified

num

ber

of ti

mes

. (EK

4.1

.1D

)•

Sele

ction

use

s a

Bool

ean

cond

ition

to

dete

rmin

e w

hich

of t

wo

part

s of

an

algo

rith

m is

us

ed. (

EK 4

.1.1

C)

Row

6

App

lyin

g A

lgor

ithm

s

RESP

ON

SE2C

Sele

cted

cod

e se

gmen

t im

plem

ents

an

alg

orith

m th

at in

clud

es a

t lea

st

two

or m

ore

algo

rith

ms.

AN

D•

At le

ast o

ne o

f the

incl

uded

al

gori

thm

s us

es m

athe

mati

cal o

r

logi

cal c

once

pts. AN

D•

Expl

ains

how

one

of t

he in

clud

ed

algo

rith

ms

func

tions

in

depe

nden

tly.

Do

NO

T aw

ard

a po

int i

f any

one

of t

he fo

llow

ing

is tr

ue:

• th

e se

lect

ed a

lgor

ithm

con

sist

s of

a s

ingl

e in

stru

ction

;•

the

sele

cted

alg

orith

m c

onsi

sts

sole

ly o

f lib

rary

cal

ls to

exi

sting

lang

uage

fu

nctio

nalit

y;•

neith

er o

f the

incl

uded

alg

orith

ms

nor

the

sele

cted

alg

orith

m th

at in

clud

es tw

o

or m

ore

algo

rith

ms

uses

mat

hem

atica

l or

logi

cal c

once

pts;

• th

e co

de s

egm

ent c

onsi

sting

of t

he a

lgor

ithm

is n

ot in

clud

ed in

the

wri

tten

re

spon

ses

secti

on o

r is

not

exp

licitl

y id

entifi

ed in

the

prog

ram

cod

e se

ction

; or

• th

e al

gori

thm

is n

ot e

xplic

itly

iden

tified

(i.e

., th

e en

tire

prog

ram

is s

elec

ted

as a

n

algo

rith

m, w

ithou

t exp

licitl

y id

entif

ying

the

code

seg

men

t con

tain

ing

the

al

gori

thm

).

• Se

e Ro

w 4

and

Row

5 d

efini

tions

and

cu

rric

ulum

fram

ewor

k al

ignm

ent.

Row

7

App

lyin

g A

bstr

acti

on

COD

E SE

GM

ENT

IN

RESP

ON

SE

2D

• Se

lect

ed c

ode

segm

ent i

s a

stud

ent-

deve

lope

d ab

stra

ction

.Re

spon

ses

that

use

exi

sting

abs

trac

tions

to c

reat

e a

new

abs

trac

tion,

suc

h as

cre

ating

a li

st

to re

pres

ent a

col

lecti

on (e

.g.,

a cl

assr

oom

, an

inve

ntor

y), w

ould

ear

n th

is p

oint

.

Do

NO

T aw

ard

a po

int i

f any

one

of t

he fo

llow

ing

is tr

ue:

• th

e re

spon

se is

an existing

abs

trac

tion

such

as

vari

able

s, e

xisti

ng c

ontr

ol

stru

ctur

es, e

vent

han

dler

s, A

PIs;

• th

e co

de s

egm

ent c

onsi

sting

of t

he a

bstr

actio

n is

not

incl

uded

in th

e w

ritt

en

resp

onse

s se

ction

or

is n

ot e

xplic

itly

iden

tified

in th

e pr

ogra

m c

ode

secti

on; o

r•

the

abst

racti

on is

not

exp

licitl

y id

entifi

ed (i

.e.,

the

entir

e pr

ogra

m is

sel

ecte

d as

an

abs

trac

tion,

with

out e

xplic

itly

iden

tifyi

ng th

e co

de s

egm

ent c

onta

inin

g th

e

abst

racti

on).

• Th

e fo

llow

ing

are

exam

ples

of a

bstr

actio

ns

(EK

5.3.

1):

• Pr

oced

ures

• Pa

ram

eter

s•

List

s•

App

licati

on p

rogr

am in

terf

aces

(API

s)•

Libr

arie

s•

List

s an

d ot

her

colle

ction

s ca

n be

trea

ted

as

abst

ract

dat

a ty

pes

(AD

Ts) i

n de

velo

ping

pr

ogra

ms.

(EK

5.5.

1I)

Row

8

App

lyin

g A

bstr

acti

on

RESP

ON

SE

2D•

Expl

ains

how

the

sele

cted

ab

stra

ction

man

ages

the

co

mpl

exity

of t

he p

rogr

am.

Resp

onse

s sh

ould

not

be

pena

lized

for

expl

anati

ons

of a

bstr

actio

ns th

at a

re n

ot d

evel

oped

by

the

stud

ent.

Do

NO

T aw

ard

a po

int i

f any

one

of t

he fo

llow

ing

is tr

ue:

• th

e ex

plan

ation

doe

s no

t app

ly to

the

sele

cted

abs

trac

tion;

or

• th

e ab

stra

ction

is n

ot e

xplic

itly

iden

tified

(i.e

., th

e en

tire

prog

ram

is s

elec

ted

as

an a

bstr

actio

n, w

ithou

t exp

licitl

y id

entif

ying

the

code

seg

men

t con

tain

ing

the

abst

racti

on).

• Se

e Ro

w 7

defi

nitio

ns a

nd c

urri

culu

m

fram

ewor

k al

ignm

ent.