Subprograms: functions and procedures
Learn it by playing
Answer these questions to earn energy, then fish and explore. No account needed.
For educators: ready-to-use lesson slides, revision notes for Subprograms: functions and procedures (Computer Science, Programming) — use them in your lesson, or run the topic as an interactive class activity your learners play as a live game.
Lesson notes
Why subprograms?
- A subprogram is a named block of code that does a specific job. They make programs modular, easier to read, test, reuse and maintain, and support team development.
Calling a reusable subprogram

Procedures and functions
- A procedure performs actions but does not return a value to the caller.
- A function returns a value: RETURN result.
- Example: FUNCTION area(w, h) RETURN w×h ENDFUNCTION. Call: x = area(3, 4) gives 12.
Parameters and arguments
- Parameters are variables in the definition (w, h); arguments are values passed when calling (3, 4). Parameters make subprograms flexible.
Definition and call
Scope
- Scope describes where a name can be accessed. A local variable or parameter is accessible within its local scope; a global name has wider program scope under this lesson’s model.
- Scope is different from lifetime. Prefer local variables and explicit parameters to reduce unintended changes to shared state.
Names and scope
Structured programming
- Use sequence, selection and iteration to organise control flow. Divide a complex solution into focused subprograms with clear interfaces.
- A main program can call subprograms; those subprograms may call others.
Library routines
- A library routine is a prewritten reusable subprogram provided by a library; some are built into the language environment.
- Using a tested routine can save implementation time, but check its parameters, return value and assumptions.
Slides
Sign up free to view the lesson slides
Step through every slide for this topic — plus flashcards and revision notes — with a free account.
Practice questions
Free preview — 8 of 33 questions. Sign up to see them all.
1.What is a subprogram?
Easy- Aa named block of code that does a job
- Ba variable
- Ca loop
- Dan input
2.In a function, what does RETURN followed by an expression do?
Easy- Asends a value back to the caller
- Bends the program
- Ccreates a loop
- Dprints
3.What is a procedure?
Easy- Aa subprogram that does not return a value
- Ba subprogram that returns a value
- Ca variable
- Da loop
4.What is a parameter?
Easy- Aa variable in a subprogram definition
- Ba value passed in
- Ca loop
- Da function
5.What is an argument?
Easy- Aa value passed to a subprogram
- Ba variable in the definition
- Can error
- Da loop
6.Why use subprograms?
Easy- Ato reuse code and make programs easier to maintain
- Bto slow programs
- Cto add errors
- Dto avoid variables
7.What is a local variable?
Easy- Aone accessible only within its local scope
- Bone accessible everywhere
- Cone that must be constant
- Done that must control a loop
8.What is a global variable?
Easy- Aone accessible throughout the program
- Bone inside a subprogram
- Cone that never changes
- Da loop
Unlock all 33 questions & more
Create a free account to see every question, the slides, flashcards and revision notes for this topic.
Past papers
Past-paper practice for this topic is coming soon.
Coming soon
