WACE Computer Science study materials
WACE Computer Science study resources

WACE Computer Science key terms

WACE Computer Science · Get comfortable with the vocabulary.

Algorithm

A finite, ordered set of unambiguous steps that transforms a given input into a required output, and which terminates after a limited number of operations.

Related: Pseudocode, Trace Table
Abstraction

Reducing complexity by hiding unnecessary detail and modelling only the features that matter for a particular purpose, such as a map that omits minor streets.

Related: Decomposition, Data Type
Decomposition

Breaking a large, complex problem into smaller sub-problems that can each be solved and tested separately, then combined to form the complete solution.

Related: Abstraction, Function
Pseudocode

A structured, English-like notation for expressing an algorithm that is independent of any programming language, using keywords such as IF, WHILE and ENDFOR to show control flow.

Related: Algorithm, Trace Table
Trace Table

A manual desk-checking record listing each variable's value after every step of an algorithm, used to verify logic and locate errors without running the program.

Related: Algorithm, Pseudocode
Variable

A named storage location whose value may change while a program runs; the name refers to the location and the data type determines what can be stored.

Related: Constant, Data Type
Constant

A named value that is assigned once and cannot be altered during execution, making code clearer and preventing accidental modification of fixed quantities.

Related: Variable, Scope
Data Type

A classification of values that determines which operations are valid and how much memory is used, for example integer, real, Boolean, character and string.

Related: Variable, Type Casting
Type Casting

Explicitly converting a value from one data type to another, such as converting a string of digits to an integer before arithmetic is performed.

Related: Data Type, Variable
Scope

The region of a program in which an identifier is visible and usable; local scope is confined to a block or subprogram, while global scope extends throughout the program.

Related: Function, Constant
Sequence

A control structure in which statements execute one after another in the order written, with no branching or repetition.

Related: Selection, Iteration
Selection

A control structure that chooses between alternative paths, executing a block only when a stated condition evaluates to true, as with IF and CASE statements.

Related: Sequence, Iteration
Iteration

A control structure that repeats a block of statements, either a counted loop with a known number of repetitions or a conditional loop that continues while a test remains true.

Related: Selection, Nested Loop
Nested Loop

A loop placed inside the body of another loop, so that the inner loop completes all its repetitions for each single repetition of the outer loop.

Related: Iteration, Algorithm
Function

A named, reusable subprogram that accepts parameters, performs a task and returns a single value to the point where it was called.

Related: Parameter, Scope
Parameter

A named input declared in a subprogram's definition; the matching value supplied by the caller is called an argument and is copied or referenced into that parameter.

Related: Function, Pass by Value
Pass by Value

A parameter-passing method in which the subprogram receives a copy of the argument, so changes made inside the subprogram do not affect the caller's original variable.

Related: Parameter, Pass by Reference
Pass by Reference

A parameter-passing method in which the subprogram receives the address of the caller's variable, so modifications made inside the subprogram alter the original value.

Related: Pass by Value, Parameter
Array

A collection of elements of the same data type stored in consecutive positions and accessed by an index, allowing many related values to share one identifier.

Related: Index, Record
Index

A position number used to locate an element within an array or string; in many languages the first element has index zero, and an invalid index causes an error.

Related: Array, String
Record

A composite data structure grouping named fields that may have different data types, such as a student record holding a name, an age and a score.

Related: Array, Data Type
String

A sequence of characters treated as a single value, supporting operations such as concatenation, length, substring extraction and character-by-character comparison.

Related: Index, Data Type
Boolean

A data type having exactly two possible values, true and false, produced by comparison and logical operators and used to control selection and iteration.

Related: Data Type, Selection
Operator Precedence

The rules determining the order in which operators in an expression are evaluated, with brackets overriding the default order and logical operators usually evaluated after arithmetic.

Related: Boolean, Algorithm
Syntax Error

A breach of the grammar rules of a programming language, such as a missing bracket or misspelled keyword, which prevents the program from compiling or running at all.

Related: Logic Error, Runtime Error
Logic Error

A fault in a program's reasoning that produces incorrect output while the code still runs, typically found by desk-checking, testing with sample data or comparing against expected results.

Related: Syntax Error, Trace Table
Runtime Error

An error that occurs only while the program executes, such as division by zero, an out-of-range index or a failed file open, often causing the program to halt.

Related: Syntax Error, Exception Handling
Exception Handling

A mechanism that detects an abnormal condition during execution and transfers control to handler code, allowing the program to recover gracefully instead of crashing.

Related: Runtime Error, Robustness
Test Data

Values chosen to exercise a program, including normal data, boundary values at the edges of valid ranges, and invalid data that should be rejected.

Related: Logic Error, Robustness
Robustness

The degree to which a program continues to behave sensibly when given invalid input, unexpected conditions or limited resources, rather than failing unpredictably.

Related: Exception Handling, Test Data
Binary

A base-2 number system using only the digits 0 and 1, in which each position represents a successive power of two and which maps directly onto digital circuit states.

Related: Hexadecimal, Bit
Hexadecimal

A base-16 number system using digits 0 to 9 and letters A to F, widely used as compact shorthand for binary because one hex digit represents exactly four bits.

Related: Binary, Bit
Bit

The smallest unit of digital data, holding a single binary value of 0 or 1; eight bits form one byte, which can represent 256 distinct patterns.

Related: Binary, Hexadecimal
Two's Complement

A scheme for representing signed integers in binary in which the most significant bit carries a negative weight, allowing subtraction to be performed by addition of a negative value.

Related: Binary, Overflow
Overflow

A condition in which a calculated result exceeds the range that the allocated number of bits can represent, causing the stored value to wrap or be reported as an error.

Related: Two's Complement, Bit
Character Encoding

A standard mapping between characters and numeric codes, such as ASCII for English letters or Unicode for worldwide scripts, enabling text to be stored as binary.

Related: Bit, String
Compression

Reducing the storage or transmission size of data, either losslessly so the original can be reconstructed exactly, or lossily by discarding detail that is unlikely to be noticed.

Related: Character Encoding, Bit
Linear Search

A search that examines each element of a list in turn until the target is found or the list ends, requiring no prior ordering but potentially checking every item.

Related: Binary Search, Algorithm
Binary Search

A search that repeatedly halves a sorted list, comparing the target with the middle element, and is far faster than a linear search on large ordered data.

Related: Linear Search, Algorithm