04 Fundamentals Of Computational Thinking Flashcards
What is abstraction?
Removing details from a problem to simplify it.
What is automation?
Building models of real world objects in order to solve a problem. You decide what details are relevant and design algorithms and data structures which are implemented through code.
What is decomposition?
Procedural decomposition is when you break one big problem into a number of sub-problems
What is composition?
Combining procdure to form a compound procedure
What is procedural abstraction?
Writing procedures and passing parameters
What is functional abstraction?
You only have to know how to call the function and what parameters to pass but you don’t have to know how the computation is carried out
What is data abstraction?
When the data that is relevant to solve a problem is in the form of an abstract data structure such as an array, stack or queue
What is a finite state machine?
Abstract representation of how something changes from one state to another in response to a condition or event
What are the rules of a finite state machine?
Can only be in one state at a time
Can change from one state to another in response to an event or condition (transition)
What is a finite state automoaton?
A finite state machine with no output
Has a start state and a set of end or accepted states