1/6
Looks like no tags are added yet.
Name | Mastery | Learn | Test | Matching | Spaced | Call with Kai | Chat |
|---|
No analytics yet
Send a link to your students to track their progress
Computational thinking
The thought processes involved in formulating problems and their solutions so that the solutions are represented in a form that can be effectively carried out by a computer
Decomposition
Breaking a problem into smaller, more manageable parts which are then easier to solve
Usually first step in the problem solving process
One of the skills required for computational thinking
Why is decomposition beneficial?
Sub-problems can be worked on by different teams at the same time
As smaller algorithms are developed for each sub-problem, it is easier to spot and correct errors
Code can also be reused when the algorithm is developed into a program
Abstraction
The process of removing or hiding unnecessary detail so that only the important points remain
One of the skills required for computational thinking
Higher the level of abstraction, lesser detail is included
Why is abstraction important?
It is important as when we create algorithms, we abstract the basic details of the problem so that we represent them in a way that the compute is able to process
High level programming languages are also at a high level of abstraction (very far removed from the actual language of a computer of a stream of 0s and 1s) to make it easier for a programmer to understand and write code
Sub-program
A self contained module of code that performs a specific task. It can be called by the main program when it is needed
What needs to be identified when designing a solution to a problem?
Inputs, outputs, initialization and processing requirements should be identified at the outset