Subprograms 2
Subprograms 2
Understanding Subprograms (2)
Subprogram Basics
- A subprogram is a sequence of instructions that perform a specific task, packaged as a unit.
- It consists of a name, possibly some parameters, a body of executable code, and usually a return value or result.
Types of Subprograms
- There are essentially two types of subprograms: procedures and functions.
- Procedures perform a specific task without returning a value.
- Functions, on the other hand, perform a task and then return a value.
Using Parameters
- Parameters are used to pass values into a subprogram.
- There are two main types of parameters: formal parameters and actual parameters.
- Formal parameters are those declared in the subprogram definition, and actual parameters are those provided when the subprogram is called.
Understanding Local and Global Variables
- Local variables are those declared within a subprogram, and are not accessible outside of it.
- Global variables are those declared outside of any subprogram, and are accessible anywhere in the program.
- It is generally good practice to minimise the use of global variables, as they can lead to unexpected behaviour in complex programs.
Understanding Variable Scope
- The scope of a variable is the region of the program in which it is visible and can be accessed.
- Local variables have a scope confined to the subprogram they are defined in.
- Global variables have a program-wide scope.
Benefits of Using Subprograms
- Subprograms promote code reusability, as once defined, a subprogram can be used again and again in a program.
- They also improve readability and make debugging easier since the code gets divided into modules or sections.
- Subprograms make it easy to organise and simplify complex tasks, improving overall code efficiency.
Recursion in Subprograms
- Some subprograms use recursion, which is the process of a subprogram calling itself in its own definition.
- Recursion can be highly effective for solving complex problems, but care must be taken to define a clear base case to avoid infinite recursion.
Key Takeaway
- Understanding the concept of subprograms is vital in programming as it leads to efficient, scalable and well-organised code.
- Subprograms enable complex problems to be broken down into smaller, manageable tasks which reduce redundancy and improve code readability.
- It is essential to understand the differences between procedures and functions, as well as the concept of local and global variables to effectively use subprograms.