1/94
Looks like no tags are added yet.
Name | Mastery | Learn | Test | Matching | Spaced |
---|
No study sessions yet.
What is the purpose of a visual check in algorithm development?
A visual check of algorithms using pseudocode.
What does an oval symbol represent in a flowchart?
The start and end of a flowchart.
What does a rectangle symbol represent in a flowchart?
A process that has to be carried out.
What does a diamond symbol represent in a flowchart?
A decision point with two outputs (true/false, yes/no).
What does a parallelogram symbol represent in a flowchart?
An input or output operation.
What does a circle symbol represent in a flowchart?
Used to link parts of a flowchart that cannot be easily connected.
What do arrows represent in a flowchart?
Shows the direction of the algorithm's flow.
What is included in arithmetic expressions used in pseudocode?
Includes add, subtract, divide, exponent, modulo, and integer division.
What is an exponent?
The power to which a number is raised (represented by ^). Example: 3^3 = 27
What is the function of modulo
The remainder after dividing one number by another (represented by mod or %). Example: 50 % 8 = 2
What happens during integer division?
Division in which the remainder is discarded (represented by DIV). Example: 50 DIV 8 = 6
What is the purpose of relational operators in pseudocode?
Defines a relationship between two values; includes equal to, not equal to, greater than, greater than or equals, less than, less than or equals.
What is the function of logical operators?
Words used to connect two or more conditions (AND, OR, NOT).
How can errors in an algorithm be identified at the design stage?
By visual checking and dry running.
What programming constructs do algorithms make use of?
Sequence, selection, and iteration.
What shape represents a process in a flowchart?
A process that has to be carried out.
What is modular division?
The remainder from division.
What does the relational operator >= mean?
Greater than or equal to.
What is an example of an expression using the logical operator AND?
IF x>1 AND x<9
Identify one situation where algorithms can be used to make decisions that will affect society.
Determining where to put a new hospital or emergency service hub.
What is computational thinking?
A problem-solving method using computer science techniques where possible solutions are developed and presented in a way that can be understood by humans and computers.
What are the three main approaches to solving problems related to the use of digital systems?
Top-down, bottom-up, and modularisation.
Describe the top-down approach.
A technique used to solve problems where the problem is broken down into smaller and smaller problems (modules) until an easily solved problem is defined.
In the top-down approach, how is a complex problem divided?
Into multiple smaller parts which can then be used to code the associated modules. Each module is decomposed until the final module(s) cannot be further decomposed.
What is the flow of control in the top-down approach?
Always in the downward direction.
How is the top-down approach usually represented?
As a tree structure.
Define decomposition.
Breaking a complex problem into smaller sub-problems.
Define abstraction.
The process of removing or filtering characteristics that are not needed, in order to focus on essential characteristics.
Describe the bottom-up approach.
The process starts with the smallest part (module) of the problem. These are then combined to move up a level, and this continues until the complete problem is solved.
What is the combination of modules in the bottom-up approach called?
Integration.
What are the main concepts of the top-down approach?
Splitting the problem into smaller sub-problems and contains redundant information.
What are the main concepts of the bottom-up approach?
Merging the fundamental low-level problems into a larger one and redundancy can be eliminated.
What type of programming languages are used in the top-down approach?
Structure/procedural-oriented programming languages (e.g., C).
What type of programming languages are used in the bottom-up approach?
Object-oriented programming languages (e.g., Python, Java).
What is the main use of the top-down approach?
Module testing.
What is the main goal of the modularisation approach?
To break a problem into different components or modules to make it more manageable and solvable.
How do modules contribute to solving a problem in the modularisation approach?
Modules work together to provide a solution to the initial problem, with each module acting as a subprogram.
What are the four techniques or pillars of computational thinking?
Decomposition, pattern recognition, abstraction, and algorithms.
Define decomposition in the context of computational thinking.
Decomposition is the technique of breaking a complex problem or system into smaller, more manageable, separate parts or modules.
How does decomposition aid in problem-solving?
Decomposition makes complex problems easier to solve and large digital systems easier to design and create by breaking them into understandable parts.
What is the benefit of solving decomposed parts of a problem?
The solution to each decomposed part may be much simpler, and when all the parts are solved, these solutions can be put together to solve the initial problem.
What is computational thinking?
Computational thinking involves techniques like decomposition, pattern recognition, abstraction, and algorithms to solve problems.
What is the aim of the modularisation approach?
The aim of the modularisation approach is to break a problem into different components, or modules.
What is the top-down approach to problem solving?
It uses decomposition, breaking down the initial problem until no more decomposition can be carried out.
What is an advantage of using decomposition?
Different people can work on different sub-tasks (modules) which can then be integrated.
What is a disadvantage of using decomposition?
The sub-problem modules may not combine to solve the initial problem, or it can be difficult to decompose if the initial problem is not fully understood.
What are the four steps of decomposition?
Why is clear and concise documentation important during decomposition?
To enable a third party to implement the solution to the problem.
What is pattern recognition in the context of problem solving?
Identifying commonalities between problems or programs to solve complex problems more efficiently.
Give an example of a pattern that is in a non-digital context?
Schools and colleges having timetables showing lessons, teachers, rooms, days, and times.
Who deciphered coded messages from the Enigma Machine at Bletchley Park?
Alan Turing and the team of code breakers.
What was the Enigma Machine used for?
To convert each message into code using different ciphers.
What is the key to initially cracking an Enigma Machine cipher?
Recognition of the cipher's patterns.
Give three examples of emerging technology applications that use pattern recognition.
Facial recognition, voice recognition software, and automated transport.
What is Facial recognition software?
Software that can identify or confirm someone's identity using their face in a photo, video, or in real-time.
What is the first step in identifying and recognizing patterns when beginning to code?
Identifying and interpreting common elements in problems or systems.
When is there more than likely going to be an existing solution to the problem?
When a common pattern has been identified.
What is an example of identifying and interpreting common differences in problems or systems?
All customer databases store records of customers, but what information is held and how it is recorded may be different.
What are the three types of individual elements in patterns?
Input, process, or output.
What should be done when a pattern has been identified?
Describe the identified pattern.
Once a pattern has been identified, what decision can be made?
A decision can be made about using it multiple times in code or reusing it in a different program.
What is abstraction?
The process of removing or filtering characteristics that are not needed, in order to focus on essential characteristics.
What is a well-known example of abstraction?
The London Underground map.
What is abstraction?
The process of removing unnecessary details to focus on essential characteristics of a problem.
What is the purpose of using the London Underground map as an example of abstraction?
It demonstrates how unnecessary details (like exact distances) are removed to simplify navigation.
What is a model in the context of abstraction?
A general idea of a problem obtained by removing specific details through abstraction.
What are the two main steps involved in abstraction?
What elements should each layer of abstraction show?
Inputs, outputs, variables, constants, key processes, and repeated processes.
Define 'variables' in the context of abstraction.
Values that change, often due to user input or calculations.
Define 'constants' in the context of abstraction.
Values that do not change during program execution.
What is syntax in the context of algorithms?
The structure of statements.
What is pseudocode?
An informal programming description showing the flow through a process, similar to a high-level language.
What are the advantages of using pseudocode?
Easy conversion to programming code, easy to follow, quick implementation of changes, acts as a link to the final program, explains code purpose.
What are the disadvantages of using pseudocode?
Can be time-consuming to write clearly, can be difficult to see the logical flow.
What is 'draft program code'?
Code written to solve a problem, but not necessarily following strict syntax rules; used to create an algorithm.
What is a trace table?
A tool used to test algorithms by dry running them with specific values, recording the values of variables.
What is an algorithm?
A plan or set of step-by-step instructions.
What are the advantages of algorithms?
Easy to understand, step-by-step representation, breaks down problems for easier coding.
What are the disadvantages of algorithms?
Can be time-consuming to create; some constructs are difficult to represent.
What is a flowchart?
A graphical diagram representing an algorithm.
What are the advantages of flowcharts?
Clear flow of the program, standardized symbols for easy understanding.
What are the disadvantages of flowcharts?
Can become large and difficult to follow with complicated programs; changes require amendments or redrawing.
What are written descriptions in algorithms?
Algorithms written in a natural language (plain English).
What are the advantages of using written descriptions for algorithms?
No formal syntax, easy to create.
What are the disadvantages of using written descriptions for algorithms?
Temptation to create a complete description, failure to include every step.
What is pattern recognition?
Identifying and recognizing patterns in data or systems.
Give an example of emerging technology applications using pattern recognition.
Facial recognition, voice recognition software, and automated transport.
List the steps to identifying and recognizing patterns when beginning to code.
What is abstraction the process of?
Removing or filtering characteristics that are not needed, in order to focus on essential characteristics.
What is a search algorithm?
An algorithm that examines data to find a specified value.
What is a sort algorithm?
An algorithm that puts a data set into a specified order.
Name standard searching algorithms.
Linear and binary searches.
Name standard sorting algorithms.
Bubble and merge sorts.
What are the advantages of using pre-written code from a library?
Saves development and testing time, optimized code, efficient and free of errors.
What are the disadvantages of using pre-written code from a library?
May not meet exact requirements, may require editing, integration difficulties.