Intro Flashcards
What is computational thinking?
thought processes involved in formulating problems and their solutions, so that solutions are in a form that can be effectively carried out by an information-processing agent
What is an algorithm?
precise systematic method for producing a specified result
Algorithms describe a sequence of steps that are… (3)
unambiguous
- no ‘assumptions’ are required to execute the algorithm
- algorithm uses precise instructions
executable
- algorithm can be carried out in practice
terminating
- algorithm will eventually come to an end, or halt
What are the 3 key CT building blocks?
decomposition
abstraction
synthesis
What is decomposition?
take a complex problem and break it into smaller problems that you can solve
What is abstraction?
used in defining patterns, generalizing from instances, and parameterization, and used to let one object stand for many - describing the solution in a general way
**(most important and high-level thought process in computational thinking)
What is synthesis?
process of combining partial solutions together to solve a problem