1. Computational thinking is the art of a human being able to think like a computer (e.g. in binary using 1s and 0s)

2. Computational thinking is a ….

3. What is this a description of? "Looking for repeating patterns in a sequence"

4. What sort of loop is being used in this flowchart?

5. What is another word for 'Iteration'

6. If you were writing an algorithm for a game and needed a way to find out if the game was over, what might you do?

7. What is line two of this algorithm doing?

8. There are generally speaking four elements of computational thinking. What are they?

Elements of Computational Thinking
==================================
1. Decomposition
2. Pattern Recognition
3. Abstraction
4. Algorithmic Thinking
5. Binary number conversion
6. Addition
7. Subtraction

1,3,5,7

1,2,3,4

1,4,5,6

3,4,5,6

9. Read the excerpt on computational thinking (from barefoot computing) and see if you agree.

10. Computational thinking is not thinking about computers or like computers. Computers don’t think for themselves. Not yet, at least!

11. Why is computational thinking so important?

12. This library system menu screen is an example of abstraction as it focuses on the bare basics necessary for a user to interact with the library

13. Using examples from this scenario, explain what is meant by abstraction.

14. In abstraction it is important to pick out the important / relevant parts / components / ideas / details.

15. In the example of a rollercoaster 3d simulation examples of the unimportant details you would NOT include would be:

16. One definition is: Abstraction is the process of removing unnecessary detail from a problem. Why is this useful?

17. Read the following excerpt on top down programming (decomposiiton) and see if you think it is TRUE or FALSE

18. Read this excerpt on reusability of modules and decide whether it is true or false

19. Which of the following statements is an ADVANTAGE of decomposition?

20. In programming, one way of decomposing a task is to break it into…..

21. How would you decompose the task of creating an app?

22. Dealing with many different stages all at once is much more difficult than breaking a problem down into a number of smaller problems and solving each one, one at a time.

23. Which of these is an example of decomposition?

24. In an algorithm, each instruction is identified and the ________in which they should be carried out is planned

25. Algorithms are often used as a starting point for creating a computer program, and they are sometimes written as a ___________________________

26. Computers are only as good as the algorithms they are given. If you give a computer a poor algorithm, you will get a poor result – hence the phrase: ‘Garbage in, garbage out.’

27. Pseudocode can differ, as there are no hard and fast rules, but what is important is that it is…..

28. Pseudocode should also be precise. How could the following pseudocode be improved?

29. Trace the flowchart's logic to find the profit or loss when CP(Cost Price) = 325 and SP (Selling Price) = 458

30. Analyse the logic of the flowchart and predict what it's function/purpose is.

31. Just like in Maths there is the ________________________ for performing calculations, otherwise known as BODMAS/BIDMAS

32. What does the B in BODMAS mean?

33. What is the output of Z for the following algorithm, when the following numbers are input. A=27, B=15, C=52.

34. The code below is for a Binary Search (in python). Where has DIV been used here?

35. Why do we need to look for patterns in problems?

36. All cars have wheels' is a pattern, because all cars have a _____________________ - wheels.

37. What is the following algorithm doing?

38. The following algorithm does this: Input 100 positive (>=0) numbers. Add up the numbers, and print the total. If a negative number is encountered, ___________________

39. What sort of iterative structure has been used in this algorithm?

40. In the following algorithm, it is likely that 'a' is referring to ….