Unit 1: Computational Thinking Edexcel GCSE Computer Science

0.0(0)
studied byStudied by 1 person
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
Card Sorting

1/41

encourage image

There's no tags or description

Looks like no tags are added yet.

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

42 Terms

1
New cards

Algorithm

Set of step-by-step instructions to complete a task, or solve a problem

2
New cards

Decomposition

breaking down larger problems into smaller problems, making them easier to solve

3
New cards

Abstraction

the process of hiding unnecessary details so that only the important points remain

4
New cards

Pattern recognition

Seeing similarities and differences in a range of problems

5
New cards

Computational thinking

Using methods to solve complex problems

6
New cards

Flowchart

Diagram that represents an algorithm showing the steps as boxes, and their order by connecting them with arrows.

7
New cards

3 basic programming constructs

Selection - Sequence - Iteration

8
New cards

3 elements of a successful algorithm

Accurate - Efficient - Consistent

9
New cards

Logical operators - AND

Two conditions must both be true for the whole statement to be true

10
New cards

Logical operators - OR

Either one of two conditions must be true for the whole statement to be true

11
New cards

Logical operators - NOT

Reverses the logic of the AND and OR statement

12
New cards

Logic error

Error that results in an unexpected output

13
New cards

Trace table

Used to identify logic errors in an algorithm

14
New cards

Sorting - Bubble sort

Uses 'brute force' to sort a list

15
New cards

Sorting - Merge sort

Uses 'divide and conquer' to sort a list

16
New cards

Searching - Linear search

Starts at beginning of list and searches until the item is found

17
New cards

Searching - Binary search

Selects the median item in a list, then checks if the desired item is higher or lower

18
New cards

Median

The middle number in a list of ascending or descending numbers

19
New cards

What is an Iteration?

Construct that allows the repetition of a process (also called a loop)

20
New cards

Selection

Construct that allows a choice to be made between different options

21
New cards

Why are subprograms used

reduce duplicate code

allows for easy reuse of code

makes code easier to debug

22
New cards
<p>What is this flowchart symbol?</p>

What is this flowchart symbol?

Terminal (start and stop)

23
New cards
<p>What is this flowchart symbol?</p>

What is this flowchart symbol?

input/output (e.g. input: enter a value/ print: your new value)

24
New cards
<p>What is this flowchart symbol?</p>

What is this flowchart symbol?

process (e.g. value*3)

25
New cards
<p>What is this flowchart symbol?</p>

What is this flowchart symbol?

decision (e.g. if value>5)

26
New cards

Aspects of Bubble sort

Slow

Suitable for small data sets

easy to program

27
New cards

Aspects of merge sort

Quick

suitable for large data sets

more difficult to program

28
New cards

Aspects of linear search

items do not need to be stored in order

new items are added at the end - quick

suitable for a small number of items

29
New cards

Aspects of binary search

items must be in order for the algorithm to work

new items must be added in the correct place to keep correct order - slow

suitable for a large number of items

30
New cards

Record

a record is a list where each value may be a different data type.

31
New cards

Why are constants used (instead of rewriting the value each time)?

If a value of a constant has to be changed, only one change is required

32
New cards

What is this type of operator? <, !=

relational

33
New cards

What is this type of operator? +, *

arithmetic

34
New cards

What is this type of operator? AND, NOT

Boolean/logical

35
New cards

Difference between syntax and logic errors

A syntax error is caused by using words of the programming language incorrectly, whereas a logic error is caused by an error in the design of the algorithm

36
New cards

Explain the effect on efficiency of using a bubble sort algorithm instead of a merge sort algorithm

A bubble sort will use less memory because it is an in-place sort

37
New cards

In-place algorithms

transforms the input without using extra memory (e.g. bubble sort)

38
New cards

Out-of-place algorithms

requires extra memory, the amount required depends on the input size (e.g. merge sort)

39
New cards

Define the term ‘iteration’.

looping over every item in a data structure

40
New cards

Benefit of subprograms

The subprogram may be used more than once in a program so will save time when writing

41
New cards

Explain why integer division is used rather than division, when finding the middle item in an array

If the length of the array is an odd number, division would return a real (decimal) number which is not valid because index values are integers

42
New cards

Define the term ‘subprogram’.

A self contained block of code that performs a specific task, that can be called by the main program when needed