StudyDeck

Procedures & Functions

Exam code: 2210
Written by: Ashika|Reviewed by: Caroline Carroll|Updated 2 July 2026

What are functions and procedures?

  • Functions and procedures are a type of sub program, a sequence of instructions that perform a specific task or set of tasks

  • Procedures and functions are defined at the start of the code

  • Sub programs are often used to simplify a program by breaking it into smaller, more manageable parts

  • Sub programs can be used to:

    • Avoid duplicating code and can be reused throughout a program

    • Improve the readability and maintainability of code

    • Perform calculations, to retrieve data, or to make decisions based on input

  • Parameters are values that are passed into a sub program

    • Parameters can be variables or values and they are located in brackets after the name of the sub program

    • Example: FUNCTION TaxCalculator(pay,taxcode) OR PROCEDURE TaxCalculator(pay,taxcode)

  • Sub programs can have multiple parameters

  • To use a sub program you 'call' it from the main program

What's the difference between a function and procedure?

  • A Function returns a value whereas a procedure does not

Procedures

Procedures

  • Procedures are defined using the PROCEDURE keyword in pseudocode or def keyword in Python

  • A procedure can be written as:


    PROCEDURE <identifier>
    <statements>
    ENDPROCEDURE

  • Or if parameters are being used:

    PROCEDURE <identifier>(<param1>:<data type>, <param2>:<data type>...)
    <statements>
    ENDPROCEDURE

Creating a procedure

Pseudocode

PROCEDURE calculate_area(length: INTEGER, width: INTEGER)
  area ← length * width
      OUTPUT "The area is ",area
END PROCEDURE

Python

def ageCheck(age):
    if age > 18:
        print("You are old enough")
    else:
        print("You are too young")
  • To call a procedure, it can be written as:


    CALL <identifier>
    CALL <identifier>(Value1,Value2...)

Calling a procedure

Pseudocode

CALL Calculate_area
CALL Calculate_area(5,3)

Python

ageCheck(21)
print(ageCheck(21))

Examples

  • A Python program using procedures to display a menu and navigate between them

  • Procedures are defined at the start of the program and the main program calls the first procedure to start

  • In this example, no parameters are needed

Procedures

# Procedure definition for the main menu
def main_menu():
    # Outputs the options
    print("1. Addition") 
    print("2. Subtraction")
    print("3. Multiplication")
    print("4. Division")
    print("5. Exit")

    # Asks the user to enter their choice
    choice = int(input("Enter your choice: ")) 
    if choice == 1: 
        addition() 
    elif choice == 2:
        subtraction()
    elif choice == 3:
        multiplication()
    elif choice == 4:
        division()
    elif choice == 5:
        exit_program()

# Procedure definition for addition
def addition(): 
    num1 = int(input("Enter the first number: "))
    num2 = int(input("Enter the second number: ")) 
    print("Result:", num1 + num2) 

# Procedure definition for subtraction
def subtraction():
    num1 = int(input("Enter the first number: "))
    num2 = int(input("Enter the second number: "))
    print("Result:", num1 - num2)

# Procedure definition for multiplication
def multiplication():
    num1 = int(input("Enter the first number: "))
    num2 = int(input("Enter the second number: "))
    print("Result:", num1 * num2)

# Procedure definition for division
def division():
    num1 = int(input("Enter the first number: "))
    num2 = int(input("Enter the second number: "))
    if num2 != 0:
        print("Result:", num1 / num2)
    else:
        print("Error: Division by zero is not allowed.")

# Procedure to exit the program
def exit_program():
    print("Exiting the program. Goodbye!")
    exit()

# Main program
while True:  # Loop to continuously show the menu until the user chooses to exit
    main_menu()

Functions

Functions

  • Functions are defined using the FUNCTION keyword in pseudocode or def keyword in Python

  • Functions always return a value so they do not use the CALL function, instead they are called within an expression

  • A function can be written as:


    FUNCTION <identifier> RETURNS <data type>
    <statements>
    ENDFUNCTION

  • Or if parameters are being used:

    FUNCTION <identifier>(<param1>:<data type>, <param2>:<data type>...) RETURNS <data type>
    <statements>
    ENDFUNCTION

Creating and using a function

Pseudocode

FUNCTION calculate_area(length: INTEGER, width: INTEGER)
  area ← length * width
      RETURN area
ENDFUNCTION

# Output the value returned from the function
OUTPUT(calculate_area(5,3))

Python

def squared(number):
  squared = number^2
  return squared

# Output the value returned from the function
print(squared(4))

Examples

  • A Python program using a function to calculate area and return the result

  • Two options for main program are shown, one which outputs the result (# 1) and one which stores the result so that it can be used at a later time (# 2)

Functions

# Function definition, length and width are parameters
def area(length, width): 
    area = length * width  # Calculate area
    return area  # Return area

# Main program #1
length = int(input("Enter the length: ")) 
width = int(input("Enter the width: ")) 
print(area(length, width))  # Calls the area function and prints the result

# Main program #2
length = int(input("Enter the length: "))  # Input for length
width = int(input("Enter the width: "))  # Input for width
calculated_area = area(length, width)  # Stores the result of the function in a variable
print("The area is " + str(calculated_area) + " cm^2")  # Outputs the result with a message