The Exam

AP Computer Science Principles

Sign In to AP Classroom

Guidance for Artificial Intelligence Tools and Other Services

Exam Overview

The AP Computer Science Principles Exam assesses student understanding of the computational thinking practices and learning objectives outlined in the course framework. The AP Exam consists of the Create performance task and an end-of-course exam. For more information, download the AP Computer Science Principles Course and Exam Description(CED). An updated document, featuring changes to the Create performance task, was posted in fall 2023.  

Encourage your students to visit the AP Computer Science Principles student page for exam information.

Assessment Dates

Tue, Apr 30, 2024

11:59 PM ET

Performance Task Submission Deadline

This is the deadline for students to complete all required components of the Create Performance Task and submit as final in the AP Digital Portfolio.

Wed, May 15, 2024

12 PM Local

AP Computer Science Principles End-of-Course Exam

Updates to Create Performance Task

Given the implications of ChatGPT and other similar generative artificial intelligence (AI) tools on the Create performance task, changes have been made to the Create performance task for 2023-24. Review the Exam Format section below for details. 

Teacher Webinar 

Register for the 2023-24 Create Performance Task Updates webinar, Tuesday, October 10, 7–8 p.m. ET, to learn more about the changes and how they relate to the overall AP Computer Science Principles Exam. If you are not able to attend live, a recording of the webinar will be made available in AP Classroom under Teacher Resources. 

Register today

New AP Daily Videos 

Get students to watch the four new AP Daily videos in AP Classroom to learn more about the Create performance task and the exam. To access these videos, students can navigate to the Course Guide section in the left navigation pane of the AP Classroom homepage, select the “Overview” page, and then click on the “Student Resources” header to expand the list of available resources. The Create performance task videos are the first four listed: 

  • Create Performance Task: Overview 

  • Create Performance Task: Guidelines 

  • Create Performance Task: Pacing Your Project 

  • Create Performance Task: Categories and Questions 

Article

AP Digital Portfolio

The AP Digital Portfolio page provides instructions on how to navigate the web-based application and review the submission status of students' Create performance task.

Exam Format

The AP Computer Science Principles end-of-course exam has consistent question types and weighting every year, so you and your students know what to expect on exam day.

Section I: End-of-Course Multiple-Choice Exam
70 multiple-choice questions | 120 minutes | 70% of score | 4 answer options

  • 57 single-select multiple-choice
  • 5 single-select with reading passage about a computing innovation
  • 8 multiple-select multiple-choice: select 2 answers

Section II: Create Performance Task: Written Responses
30% of score

  • Create performance task program code, video, and student-authored Personalized Project Reference | 9 hours in-class
  • 4 written response prompts | 60 minutes end-of-course exam

The second section of the AP Computer Science Principles Exam consists of a through-course Create performance task where students will develop a computer program of their choice and an end-of-course written response section where students demonstrate their understanding of their personal Create performance task by answering four prompts. Students will be provided 9 hours of in-class time to complete their program, video, and develop a Personalized Project Reference.  

For the written response prompts, students will have access to their Personalized Project Reference and write responses to four prompts related to their program and code contained in this reference sheet. One question from each of the prompt categories listed below will appear on the end-of-course exam. The specific prompts will vary across the different versions of the exam.

Prompt Category

Required Learning Objectives

Program Design, Function, and Purpose 

Students should be prepared to respond to prompts about their program that assess any of the following learning objectives:  

  • CRD-2.A: Describe the purpose of a computing innovation.  

  • CRD-2.B: Explain how a program or code segment functions.  

  • CRD-2.C: Identify input(s) to a program. 

  • CRD-2.D: Identify output(s) produced by a program. 

  • CRD-2.E: Develop a program using a development process. 

  • CRD-2.F: Design a program and its user interface. 

  • CRD-2.G: Describe the purpose of a code segment or program by writing documentation. 

Algorithm Development 

Students should be prepared to respond to prompts about their program that assess any of the following learning objectives:  

  • CRD-2.B: Explain how a program or code segment functions. 

  • AAP-2.E.b: Evaluate expressions that use relational operators. 

  • AAP-2.F.b: Evaluate expressions that use logic operators. 

  • AAP-2.H.b: Determine the result of conditional statements. 

  • AAP-2.J: Express an algorithm that uses iteration without using a programming language. 

  • AAP-2.K.b: Determine the result or side effect of iteration statements. 

  • AAP-2.L: Compare multiple algorithms to determine if they yield the same side effect or result. 

  • AAP-2.M.a: Create algorithms. 

  • AAP-2.M.b: Combine and modify existing algorithms.

Errors and Testing  

Students should be prepared to respond to prompts about their program that assess any of the following learning objectives:  

  • CRD-2.I.a: Identify the error. 

  • CRD-2.I.b: Correct the error. 

  • CRD-2.J: Identify inputs and corresponding expected outputs or behaviors that can be used to check the correctness of an algorithm or program.

Data and Procedural Abstraction 

Students should be prepared to respond to prompts about their program that assess any of the following learning objectives:  

  • AAP-1.D.a: Develop data abstraction using lists to store multiple elements.  

  • AAP-1.D.b: Explain how the use of data abstraction manages complexity in program code.  

  • AAP-2.O.a: Write iteration statements to traverse a list. 

  • AAP-2.O.b: Determine the result of an algorithm that includes list traversals.  

  • AAP-3.B: Explain how the use of procedural abstraction manages complexity in a program. 

Scoring Information from the 2023 Exam

Create – Sample Responses 

Scoring Information 

Scoring Commentary 

Score Distributions 

 

 Scoring Guidelines

  

  

Past Exam Questions and Scoring Information

Article

AP Computer Science Principles Past Exam Questions

View student samples and scoring information from past years.

Score Reporting