Computational Thinking Flashcards
What does computational thinking alllow us to do?
Allows us to understand what a comlex problem is and develop possible solutions
What are the cornerstones (stages) of computational thinking?
- Decomposition
- Abstraction
- Pattern recognition
- Algorithm design
Describe the following cornerstone of computational thinking π€:
Decomposition
Breaking down a complex problem into a number of smaller problems.
Describe the following cornerstones of computational thinking π€:
Pattern recognition
Looking for similarities among and within problems.
Describe the following cornerstone of computational thinking π€:
Abstraction
Focusing on the important information only ignoring irrelevant detail.
Describe the following cornerstone of computational thinking π€:
Algorithm design
Developing a step-by-step solution to the problem, or the rules to follow to solve the problem.
What is this flow chart symbol used for:
A rounded rectangle
Use the show the start or end of a flow chart π.
What is this flow chart symbol used for:
Arrows β¬οΈ
An arrow represents the relationship between the shapes, it connects and shows the direction of flow through the diagram.
What is this flow chart symbol used for:
Parallelogram
A parallelogram represents input or output.
What is this flow chart symbol used for:
Rectangle
A rectangle represents a process.
What is this flow chart symbol used for:
Diamond
A diamond represents a decision.
What is pseudocode?
- pseudocode is a set of step-by-step instructions
- It is written in plain English
- Each step in the pseudocode can be directly translated into the programming language to be used.
What is encryption?
- The process of making data unreadable to anyone other than the intended recipient.
- Data can be stored and sent securely from one computer to another.
- It does not to stop someone from intercepting the message but if they do intercept it, they will not be able to read the message. The message may appear all jumbled up and will therefore not make sense.
- The data is encrypted using an encryption algorithm. This is referred to as a cipher.
What is decryption?
- This takes the encrypted data (the cypher text) and makes it readable again (into plaintext).
- This could be as simple as with asking the steps that were taken to encrypt the plain text. This is known as symmetric encryption.
- Modern encryption and decryption methods tend to be more secure and use a different algorithm to decrypt.
- There was a different key to decrypt the data. This is known as asymmetric encryption.
Explain the term in more detail:
Symmetric encryption
- Symmetric encryption is a method where the same key is used to encrypt and decrypt the data.
- This creates a problem known as the key distribution problem.
- Somehow the encryption he has to get back from the sander to the receiver but this creates a security risk because the key could get intercepted.
- Encryption is pointless if unauthorised users know the key as they can then decrypt any message that has been encrypted with that key π.
Explain the term in more detail:
Encryption key
- The security risk of someone intercepting the encryption key can be solved by using two keys - a public one, and a private one that are mathematically linked.
* This is known as asymmetric encryption.
* It can also be called public key encryption. - The recipients provide the public key π. If someone else receives it, it does not matter because all it does is encrypt data.
- Only a second private key can decrypt the message. This is never sent or shared out. If that key is kept secure, the messages are safe from unauthorised people reading them.
Define the term:
Algorithm
A series of logical instructions for how to do a task.
Define the term:
Message
A general term for data that is communicated between two people.
Define the term:
Plaintext
Ordinary readable text prior to being encrypted by an encryption algorithm or after being decrypted.
Define the term:
Cypher text
Encrypted text that has been changed from plaintext through the use of an encryption algorithm.
Define the term:
Encryption key π
Information used by the software algorithm to encrypt and decrypt data.
Describe:
Caesar Cypher
- Developed circa 100 BC, the Caesar Cypher (also known as Shift Cypher) is one of the earliest known cyphers.
- It is an encryption technique that was developed by Julius Caesar so that he could securely communicate with his armies.
- It is a symmetric encryption method.
- It is a type of substitution cypher.
- With the development of more advanced digital methods, it is no longer considered a strong encryption technique.
How is a message encrypted using Caesar Cypher?
- A number value is assigned to a key π.
- The letters are then shifted by the amount of the key π.
- The new letter is found at the original letters position in the alphabet, plus or minus the value of the given key π.
YouTube video: https://www.youtube.com/watch?v=o6TPx1Co_wg
How is a message encrypted using Pigpen Cypher.
β’The Pigpen Cypher is a substitution cipher. Instead of letters, the system uses geometric symbols, which are found through a series of 4 grids. The part of the grid that contains the letter is written in its place.
How is a message encrypted using Pigpen Cypher.
β’The Pigpen Cypher is a substitution cipher. Instead of letters, the system uses geometric symbols, which are found through a series of 4 grids. The part of the grid that contains the letter is written in its place.
What is linear search?
Linear search is a method of finding an item in a list. It involves searching through each item in a list until a match is found.
What is Binary search?
In computer science, binary search, is a search algorithm that finds the position of a target value within a sorted array. Binary search compares the target value to the middle element of the array.
What is bubble sort?
Bubble sort is a simple sorting algorithm that starts at the beginning of a dataset and checks values in βpairsβ and swaps them if they are not in the correct order.
What is sequence?
in programming concepts
- Sequence is the simplest structure for an algorithm to follow.
- In a sequence algorithm, the computer follows a series of steps that are executed in the same order every time it runs.
- This is often not very useful for longer codes because we cannot use any decision making or repitition.
What is selection?
in programming concepts
- Selection allows us to have decisions made in our program.
- Selection allows us to execute a section of code depending on whether a condition is met or not.
What is iteration?
in programming concepts
- Iteration allows a group of statements to be repeated multiple times. Iteration statements are often called loops.
Indefinite iteration
- A block of code will repeat while a specified condition is true.
Definite iteration
- A block of code will repeat a known number of times.