Procedure

In AP Computer Science Principles, a procedure is a named group of programming instructions that may have parameters and return values (EK AAP-3.A.1). Calling it pauses the program's sequential flow, runs the procedure's statements, then returns to where the call happened.

Verified for the 2027 AP Computer Science Principles examLast updated June 2026

What is Procedure?

A procedure is a named group of programming instructions that may have parameters and return values. Think of it as a chunk of code you write once, give a name, and then reuse anywhere just by calling that name. Depending on the language, you'll hear it called a function or a method, but on the AP exam it's always "procedure," and the exam reference sheet writes it as PROCEDURE procName(parameter1, parameter2, ...).

Two things make procedures powerful. First, the mechanics. When you call a procedure, the program interrupts its normal top-to-bottom execution, jumps into the procedure, runs its statements (using the arguments you passed in as values for the parameters), and then picks back up right after the call. If the procedure has a RETURN(expression) statement, the call hands back a value you can store, like result ← procName(arg1, arg2). Second, the big idea. Naming a process means you can use it knowing only what it does, not how it does it. That's procedural abstraction, and it's how you break a large problem into smaller subproblems you can actually solve.

Why Procedure matters in AP Computer Science Principles

Procedures live in Unit 3 (Algorithms and Programming), specifically Topics 3.12 Calling Procedures and 3.13 Developing Procedures. Learning objective AP Comp Sci P 3.12.A asks you to write procedure calls and determine the result or effect of a call. AP Comp Sci P 3.13.A and AP Comp Sci P 3.13.B ask you to explain and actually build procedural abstractions to manage complexity. That second part is huge because the Create performance task explicitly requires a student-developed procedure with at least one parameter that affects the procedure's functionality. In other words, this isn't just a vocab word. It's a deliverable. If you can't write and call a procedure, you can't earn key Create task points.

How Procedure connects across the course

Procedural Abstraction (Unit 3)

Procedural abstraction is the why behind procedures. By naming a process, you can use it without knowing its inner workings, the same way you drive a car without understanding the engine. Splitting a program into procedures like this is called modularity (EK AAP-3.B.3).

Parameters (Unit 3)

Parameters are the input variables listed in a procedure's definition, and arguments are the actual values you supply when you call it (EK AAP-3.A.3). One procedure plus different arguments equals different results, which is exactly how a procedure generalizes shared functionality.

return value (Unit 3)

A RETURN(expression) statement ends the procedure and sends a value back to the call site, where you can capture it with result ← procName(arg1, arg2). Procedures without a return just produce an effect, like displaying output, instead of handing back a value.

Control Flow (Unit 3)

A procedure call is one of the few things that breaks normal sequential execution (EK AAP-3.A.4). The program jumps into the procedure, runs it, and jumps back. Tracing that jump correctly is what most procedure MCQs are secretly testing.

Is Procedure on the AP Computer Science Principles exam?

On the multiple-choice section, procedure questions usually hand you pseudocode and ask you to trace it. You might compute what a recursive procedure like mystery(7) returns, pick the correct call syntax for a procedure like calculateTotal(price, quantity, taxRate), predict what applyDiscount returns for given arguments, or identify how to call one procedure from inside another. The skill being tested is determining the result or effect of a call (AP Comp Sci P 3.12.A). On the Create performance task, procedures are worth real points. The 2023 scoring criteria award a Procedural Abstraction point for showing a student-developed procedure with at least one parameter that affects its functionality, plus a separate code segment showing where that procedure is called. So you need to both build a procedure and prove you used it.

Procedure vs Function

There's no meaningful difference on this exam. EK AAP-3.A.2 says procedures go by different names, like method or function, depending on the language. Python calls them functions, Java calls them methods, and AP CSP pseudocode calls them procedures. The real confusion to avoid is parameters versus arguments. Parameters are the variables in the definition, and arguments are the values you pass in when you call it.

Key things to remember about Procedure

  • A procedure is a named group of programming instructions that may have parameters and return values (EK AAP-3.A.1).

  • Calling a procedure interrupts sequential execution, runs the procedure's statements, and then resumes right after the call.

  • Parameters are the input variables in the procedure's definition, while arguments are the actual values supplied in the call.

  • Procedural abstraction lets you use a procedure knowing only what it does, not how it does it, which is how programmers manage complexity.

  • Breaking a program into separate procedures is called modularity, and it turns one big problem into smaller solvable subproblems.

  • The Create performance task requires a student-developed procedure with at least one parameter that affects how the procedure works, plus code showing where it's called.

Frequently asked questions about Procedure

What is a procedure in AP Computer Science Principles?

A procedure is a named group of programming instructions that may have parameters and return values. In AP pseudocode it's defined with PROCEDURE procName(parameter1, parameter2, ...) and called by writing its name with arguments.

Is a procedure the same as a function in AP CSP?

Yes, for exam purposes. EK AAP-3.A.2 says procedures are called different names, like function or method, depending on the language. The AP exam uses "procedure" in its pseudocode, but a Python function counts as a procedure on the Create task.

Do all procedures have to return a value?

No. A procedure can return a value with RETURN(expression), or it can just produce an effect, like displaying output or changing a list. AP Comp Sci P 3.12.A asks you to determine the result OR effect of a call, because both kinds exist.

What's the difference between a parameter and an argument?

Parameters are the input variables written in the procedure's definition, like price and quantity in calculateTotal(price, quantity, taxRate). Arguments are the actual values you plug in when you call it, like calculateTotal(5, 3, 0.08).

Do I need a procedure in my Create performance task?

Yes. The scoring criteria require a student-developed procedure with at least one parameter that affects the procedure's functionality, plus a code segment showing where that procedure is called. Skipping it costs you points you can't get back.