NEB 12 Computer Science study materials
NEB 12 Computer Science study resources

NEB 12 Computer Science key terms

NEB 12 Computer Science · Get comfortable with the vocabulary.

Algorithm

A finite, ordered set of unambiguous steps that transforms given inputs into a desired output and terminates. It must be precise enough that anyone following it reaches the same result.

Related: Flowchart, Pseudocode, Time Complexity
Flowchart

A diagram that uses standard symbols such as ovals for start and end, parallelograms for input and output, rectangles for processes, and diamonds for decisions to show the sequence of steps in a solution.

Related: Algorithm, Pseudocode
Pseudocode

A structured, English-like way of writing an algorithm that uses indentation and keywords such as IF, WHILE, and READ instead of strict syntax, so logic can be planned before coding.

Related: Algorithm, Flowchart
Compiler

A program that translates an entire source program into machine code before it runs, reporting syntax errors for the whole file and producing an executable that runs independently of the compiler.

Related: Interpreter, Source Code, Syntax Error
Interpreter

A program that translates and executes source code one statement at a time, stopping at the first error it meets. It needs no separate executable file and is useful for testing small programs.

Related: Compiler, Source Code
Source Code

The human-readable program text written by a programmer in a high-level language such as C or Python, which must be translated before the processor can execute it.

Related: Compiler, Interpreter
Syntax Error

A mistake that breaks the grammar rules of a programming language, such as a missing semicolon or unmatched bracket. The translator refuses to produce output until it is corrected.

Related: Logical Error, Runtime Error, Compiler
Runtime Error

A fault that occurs while a program is executing, such as division by zero or reading past the end of an array. The syntax is valid, but execution halts abnormally.

Related: Logical Error, Syntax Error, Exception
Logical Error

A flaw in the reasoning of a program that lets it run to completion but produce wrong results, for example using addition where multiplication was intended. It is found by testing, not by the compiler.

Related: Syntax Error, Runtime Error, Dry Run
Dry Run

Manually tracing a program or algorithm with sample values, recording each variable in a trace table, to confirm the logic and locate errors without running the code on a computer.

Related: Logical Error, Loop
Variable

A named storage location in memory whose value can change during execution. Its name identifies it, its data type fixes what it can hold, and its scope fixes where it is visible.

Related: Data Type, Constant, Scope
Constant

A named value that is assigned once and cannot be altered while the program runs, such as PI or MAX_SIZE. It makes programs easier to read and safer to modify.

Related: Variable, Data Type
Data Type

A classification that determines which values a variable may hold and which operations apply to it, for example integer, real, character, string, and Boolean.

Related: Variable, Type Casting, Array
Type Casting

Converting a value from one data type to another, either implicitly by the translator or explicitly by the programmer, as when an integer is converted to a real number.

Related: Data Type, Variable
Selection (IF Statement)

A control structure that tests a condition and executes one block of statements when it is true and optionally another block when it is false, allowing a program to choose between paths.

Related: Loop, Boolean Expression, Nested Loop
Loop

A control structure that repeats a block of statements while a condition holds or for a fixed number of times, avoiding the need to write the same instructions repeatedly.

Related: Nested Loop, Selection (IF Statement), Dry Run
Nested Loop

A loop placed inside the body of another loop. The inner loop completes all its repetitions for each single repetition of the outer loop, which suits tables and two-dimensional arrays.

Related: Loop, Array, Selection (IF Statement)
Array

A collection of elements of the same data type stored in consecutive memory locations and accessed by an index, usually counted from zero in languages like C and Java.

Related: Index, Data Type, Nested Loop
Index

The integer position used to locate a particular element of an array or string. In most languages the first element has index zero, so the last index is one less than the size.

Related: Array, String
Function

A named block of statements that performs a task, may receive parameters, and may return a value. It lets a program reuse code instead of duplicating it.

Related: Parameter, Return Value, Recursion
Parameter

A variable declared in a function's definition that receives a value when the function is called, letting the same code work on different data each time.

Related: Function, Return Value, Call by Value
Return Value

The single result a function sends back to the statement that called it, using a return statement. A function without a return value is often called a procedure.

Related: Function, Parameter
Recursion

A technique in which a function calls itself on a smaller version of the same problem, with a base case that stops the calls. Without a base case it recurses forever.

Related: Function, Stack
Iteration

Repetition of a set of statements using a loop rather than a recursive call. It usually uses less memory than recursion because no new call frames accumulate.

Related: Loop, Recursion
Boolean Expression

An expression that evaluates to either true or false, built with relational operators such as < and = and combined with AND, OR, and NOT to control selection and loops.

Related: Selection (IF Statement), Loop
String

A sequence of characters treated as one value, such as a name or address. Strings support operations like length, concatenation, comparison, and extraction of substrings.

Related: Array, Index, Data Type
Linear Search

A search that examines array elements one by one from the start until the target is found or the list ends. It works on unsorted data but is slow on large lists.

Related: Binary Search, Array, Time Complexity
Binary Search

A search that repeatedly halves a sorted array, comparing the target with the middle element and discarding the half that cannot contain it. It is much faster than linear search.

Related: Linear Search, Array, Time Complexity
Bubble Sort

A sorting algorithm that repeatedly compares adjacent elements and swaps them when out of order, so larger values gradually move to the end of the list over successive passes.

Related: Selection Sort, Time Complexity
Selection Sort

A sorting algorithm that finds the smallest remaining element and swaps it into the next position, building a sorted section from the front of the list one item at a time.

Related: Bubble Sort, Time Complexity
Time Complexity

A measure of how the running time of an algorithm grows as the input size increases, usually written in Big-O notation such as O(n) for linear and O(log n) for binary search.

Related: Binary Search, Bubble Sort, Algorithm
Stack

A linear data structure that follows last in, first out order, with push to add at the top and pop to remove from the top. It is used for undo, expression evaluation, and function calls.

Related: Queue, Recursion
Queue

A linear data structure that follows first in, first out order, with enqueue adding at the rear and dequeue removing from the front. It models waiting lines and print jobs.

Related: Stack, Array
Database

An organised collection of related data stored so that it can be retrieved, inserted, updated, and deleted efficiently, usually managed by a database management system.

Related: Primary Key, Foreign Key, SQL
Primary Key

A field or combination of fields that uniquely identifies each record in a table. It cannot be null and cannot repeat, so it guarantees that rows are distinguishable.

Related: Foreign Key, Database, SQL
Foreign Key

A field in one table that holds the primary key value of a record in another table, creating a link between the tables and enforcing referential integrity.

Related: Primary Key, Database, SQL
SQL

Structured Query Language, used to define and manipulate relational data with statements such as SELECT, INSERT, UPDATE, DELETE, and CREATE TABLE.

Related: Database, Primary Key, Foreign Key
Normalisation

The process of organising tables to reduce duplicated data and update anomalies by splitting them into related tables, typically through first, second, and third normal forms.

Related: Database, Primary Key, Foreign Key
Operating System

System software that manages hardware, memory, files, and processes, and provides services so application programs can run. Examples include Windows, Linux, and Android.

Related: Utility Software, Compiler
Utility Software

Programs that maintain and protect a computer system, such as antivirus tools, disk defragmenters, backup utilities, and file compression tools. They support rather than run user tasks.

Related: Operating System, Compiler