1/33
GCSE Computer Science 1CP2
Name | Mastery | Learn | Test | Matching | Spaced | Call with Kai | Chat |
|---|
No analytics yet
Send a link to your students to track their progress
Abstraction
the process of removing or hiding unnecessary details so that only the most important points remain.
Algorithm
a precise method for solving a problem. It consists of a sequence of step-by-step instructions that solve a specific problem.
Algorithmic bias
behaviours in computer programs that create unfair outcomes.
Artificial intelligence (AI)
the ability of a digital computer or computer-controlled robot to perform tasks commonly associated with intelligent beings. Intelligent beings are those that can adapt to changing circumstances.
Ascending order
arranging items from smallest to largest (e.g. 1, 2, 3, 4, 5,60ra, b,c, d,e, f).
Assignment
the act of storing a value in a variable. Uses the ‘=’ symbol. The value on the right is stored in the variable on the left.
Boundary data
data that sits on the edge of any test conditions, either above or below.
Bug
an error in program code.
Code review
code is examined to identify poor programming practices, find potential vulnerabilities and check its efficiency.
Comments
a way for programmers to annotate code so that their logic is clear to the reader. Comments are not executed.
Computational thinking
the thought processes involved in formulating problems and their solutions so that the solutions are represented in a form that can be effectively carried out by a computer or human.
Decomposition
breaking down into smaller parts. Both problems and solutions can be decomposed into small parts.
Descending order
arranging items from largest to smallest (e.g. 6, 5, 4, 3, 2, lorf,e,d,c,b,a).
Divide and conquer
an algorithm design that works by dividing a problem into smaller and smaller sub-problems, until they are easy to solve. The solutions to these are then combined to give a solution to the complete problem.
Domain Name System (DNS)
a directory of domain names and equivalent IP addresses.
Efficiency
measured by number of compares, number of passes through a loop, or use of memory.
Evaluation
making judgements against requirements, about efficiency, and whether there are other solutions.
Flowchart
a graphical representation of an algorithm. Each step in the algorithm is represented by a symbol. Symbols are linked together with arrows showing the order in which steps are executed.
Generalisation
taking an algorithm that solves one specific problem and adapting it so that it solves similar or new problems.
Heuristics
a type of algorithm capable of finding a solution to a problem quickly and easily, by using a combination of trial and error and educated guesswork to cut corners and eliminate less likely alternatives. Heuristic algorithms don’t always find the best solution, but they will usually find one that works. Some anti-malware software uses heuristics to detect malware by its behaviour and characteristics.
In-place sort
a sort that does not need to make a copy of the data.
Logic error
an error in an algorithm that results in incorrect, unwanted or unexpected behaviour.
Machine learning
the ability of machines to learn on their own without being programmed. For example, pictures of dogs labelled ‘dog’ will help the algorithm identify the rules to classify pictures of dogs.
Median
the middle item when the items are put in ascending or descending order, e.g. if there are 13 items, then the 7th item is the median.
Optimisation
improvements made to an algorithm or process to increase its efficiency.
Pattern recognition
finding common characteristics of small problems that will allow us to develop solutions to other, perhaps complex, problems.
Recursion
involves a subprogram calling itself, with modified input arguments on each call. Each call reduces the complexity of the problem. After a finite number of calls, an endpoint is reached, then each subprogram completes (unwinds) in reverse order.
Robust software
code that can handle unexpected actions without crashing or producing incorrect output.
Selection
a construct that allows a choice to be made between different alternatives. The selection construct is used to create a branch in a program. The computer selects which branch to follow based on the outcome of a test condition.
Sequence
an ordered set of instructions.
Validation
to check that the data entering a program, by any means, is fit for processing. It must meet specific requirements if it is to be allowed into the program. Validation can’t guarantee that data is correct, only that it meets the criteria for processing.
WHILE construct
allows a group of instructions to be repeated over and over, as long as a test condition is true.
WHILE statement
the Python keyword while allows a group of instructions to be repeated over and over, as long as a test condition is true.