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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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).
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.
Connect this key term to the AP exam workflow: review the course, practice questions, and check related study tools.
Review units, study guides, and course resources.
Check this vocabulary in multiple-choice context.
Apply key concepts in written AP responses.
Estimate the exam score you are working toward.
Review the highest-yield facts before practice.
Put the full course together before test day.