A) Computational Thinking Flashcards
What are the four stages of computational thinking?
- Decomposition
- Pattern recognition
- Pattern generalisation and abstraction
- Algorithm design
What is an algorithm?
A series of well-defined instructions that can be executed by a computer to solve a problem or complete a specific task.
What is decomposition?
The process of breaking down complex ideas into smaller, more manageable parts. It helps makes problems easier to solve, allowing you to solve a single problem at a time.
What are the steps of decomposition?
- Identify key problems and processes
- Break these down into distinct steps
- Document the problems and processes that have been decomposed (flowcharts, pseudocode)
- Discuss the problems and processes with others
What is pattern recognition?
The process of spotting recurring patterns or repetition within the problem being solved, helping us create more efficient designs and work through problems more easily.
What are the steps of pattern recognition?
- Identify common elements or features
- Identify and interpret common differences
- Identify individual elements within problems
- Make predictions based on identified patterns
What is abstraction?
The process of ignoring unimportant details so the important ones can be focused on. It allows us to use features and functions without having to fully understand how they work.
What is pattern generalisation?
The process of drawing conclusions about a problem by identifying relationships between patterns.
What are the steps of pattern generalisation and abstraction?
- Identify information required to solve the problem
- Filter out information not required to solve the problem
What key parts do you need to identify in pattern generalisation and abstraction?
- variables
- constants
- key processes
- repeated processes
- inputs
- outputs
What is algorithm design?
The process of designing an algorithm to be used to develop a computer program.
What are the steps of algorithm design?
- Understand the problem
- Identify key inputs
- Identify the processes
- Identify data storage requirements
- Identify key outputs