Assignment 1_ Computational Thinking skills

Computational Thinking Skills
Computer Science is all about writing programs to solve problems. The thing is that computer systems are only as good as the code we write for them.
The way of doing this is called Computational Thinking and it basically means we need to think like a computer. In order to do this, there are several techniques that programmers use to help break down problems into smaller problems that can be turned unto code.
1 / 27
volgende
Slide 1: Tekstslide
ProgrammingFurther Education (Key Stage 5)

In deze les zitten 27 slides, met interactieve quizzen en tekstslides.

Onderdelen in deze les

Computational Thinking Skills
Computer Science is all about writing programs to solve problems. The thing is that computer systems are only as good as the code we write for them.
The way of doing this is called Computational Thinking and it basically means we need to think like a computer. In order to do this, there are several techniques that programmers use to help break down problems into smaller problems that can be turned unto code.

Slide 1 - Tekstslide

Deze slide heeft geen instructies

After this Lesson You would learn
  • 1. Decomposition
  • 2. Pattern Recognition
  • 3. Abstraction
  • 4.Representing elements

Slide 2 - Tekstslide

Deze slide heeft geen instructies

Slide 3 - Tekstslide

Deze slide heeft geen instructies

In this lesson will learn about
Decomposition 
Pattern Recognition
Abstraction
Presentation of elements 

Slide 4 - Tekstslide

Deze slide heeft geen instructies

Decomposition -
Before computers can solve a problem, the problem and the ways in which it can be resolved must be understood. Decomposition helps by breaking down complex problems into more manageable parts.

Decomposition  is the process of break down the problem into smaller more managable bits 
You need to keep decomposing the problem until you arrive at a series of steps that cannot be broken down any further.

You should be able to stick all the individual pieces back together to make a complete program.

Slide 5 - Tekstslide

Deze slide heeft geen instructies

Decomposition
This process, of taking a larger problem and breaking it down into smaller, more manageable problems is called DECOMPOSITION.

It also helps you to spot other problems you might encounter.
You need to keep decomposing the problem until you arrive at a series of steps that cannot be broken down any further.
You should be able to stick all the individual pieces back together to make a complete program.

Slide 6 - Tekstslide

Deze slide heeft geen instructies

Another Decomposition Exercise for you!
In The Next exercise you would decompose " How to use a washing Machine. Drag and Drop Exercise!

Slide 7 - Tekstslide

Deze slide heeft geen instructies

Step 1 
Step 2
Step 3
Step 4

Slide 8 - Sleepvraag

Decompose the process of Washing Clothes.
Decomposition 2 Exercise 
You heard that cloud technology has excellent opportunities 
You have broken down the task of discovering whether this is true into smaller tasks. 
Select all that applies!

Slide 9 - Tekstslide

Deze slide heeft geen instructies

Yes 
No 

Slide 10 - Sleepvraag

Drag and Drop

Pattern Recognition
Once we have decomposed a complex problem, it helps to examine the small problems for similarities or ‘patterns’. These patterns can help us to solve complex problems more efficiently.

Slide 11 - Tekstslide

Deze slide heeft geen instructies

Pattern recognition
When we decompose a complex problem, we often find patterns among the smaller problems we create. The patterns are similarities or characteristics that some of the problems share.

Pattern recognition is one of the four cornerstones of Computer Science. It involves finding the similarities or patterns among small, decomposed problems that can help us solve more complex problems more efficiently.


Slide 12 - Tekstslide

Deze slide heeft geen instructies

Example of Pattern Recognition 
You were told to write a program that will enter 20 students in groups of 5. 
You have done your decomposition and found that you will do the following:-
1. Create  20/5 = Four groups 
2.  You decided to use an array of four list
3. You have decided to populate each group by entering all members of that group then move onto the next group. 

Slide 13 - Tekstslide

Deze slide heeft geen instructies

Name patterns
you can discern from program
so far.

Slide 14 - Woordweb

Deze slide heeft geen instructies

Abstraction layer 
Abstraction is the process of filtering out – ignoring - the characteristics of patterns that we don't need in order to concentrate on those that we do. It is also the filtering out of specific details. From this we create a representation (idea) of what we are trying to solve.

Slide 15 - Tekstslide

Deze slide heeft geen instructies

Why is Abstraction Important.

If we don’t abstract we may end up with the wrong solution to the problem we are trying to solve. With our cat example, if we didn’t abstract we might think that all cats have long tails and short fur. Having abstractAbstraction allows us to create a general idea of what the problem is and how to solve it. The process instructs us to remove all specific detail, and any patterns that will not help us solve our problem. This helps us form our idea of the problem. This idea is known as a ‘model’.ed, we know that although cats have tails and fur, not all tails are long and not all fur is short. In this case, abstraction has helped us to form a clearer model of a cat

Slide 16 - Tekstslide

Deze slide heeft geen instructies

Required 
Not Required 

Slide 17 - Sleepvraag

Abstraction Exercise 

A program to create a   4 groups of 5 students 
Representation - Algorithms 
Algorithms are step-by-step plans for solving problems. Algorithms can be designed using pseudo-code, flowcharts, written descriptions and program code. There are also some standard algorithms for searching and sorting.

Slide 18 - Tekstslide

Deze slide heeft geen instructies

Slide 19 - Tekstslide

Deze slide heeft geen instructies

Slide 20 - Tekstslide

Deze slide heeft geen instructies

Applying the use of higher Thinking skills - 20Minutes
Create a program that would ask a user to enter the names of 5 learners into 4 groups.
You then print the name out one after the other.
 Create a flow chart for the program.
You could use the program below to get you started 


Slide 21 - Tekstslide

Deze slide heeft geen instructies

Slide 22 - Link

Run the program and modify it for slide 22 activity 
Extension Activity
Identify any Things you could remove from the program.
That is called abstraction 

Slide 23 - Tekstslide

Deze slide heeft geen instructies

Extension
Anything that can be removed or not required in the extercise

Slide 24 - Woordweb

Deze slide heeft geen instructies

What is your understanding of Computational
Thinking
Very well
Quite well
I need to go through the lesson a few more times

Slide 25 - Poll

Deze slide heeft geen instructies

Complete P1- by 10th Oct 22
See Assignment Lesson

Slide 26 - Tekstslide

Deze slide heeft geen instructies

The End
Thank you for learning with us.

Slide 27 - Tekstslide

Deze slide heeft geen instructies