Week 3 - Computational thinking Flashcards

1
Q

What is computational thinking?

A

its not merely knowing how to use an algorithm or a data structure, but, when faced with a problem, to be able to analyse it with the techniques and skills that computer science puts at our disposal.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What is a computational problem.

A

A computational problem is described as a problem that is expressed sufficiently precisely that it is possible to attempt to build an algorithm to solve it.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

what two skills does computational thinking consist of?

A
  1. formulate a problem as a computational problem
  2. Construct a good computational solution (i.e. an algorithm) for the problem, or explain why there is no such solution.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

describe the Diagrammatic representation of abstraction as modelling.

A
Model
                >            >
Represented         ignores
/modelled             detail of
by
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What is encapsulation ?

A

The layer through which the user interacts with the model is called the interface. It hides the detailed workings of the model from the user.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

describe the two layers involved in abstraction as encapsulation.

A

the interface: a layer through which users interact with the model.

hides depends
detail from on

The implementation: a layer that implements the model.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

How does abstraction as modelling help to manage complexity?

A

this is done by discarding infomration: we abstract away all that is irrelevant, to leave a model that contains only what is actually of interest.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

How does abstraction as encapsulation help to manage complexity?

A

it is done by hiding information: we encapsulate the details of an implementation/automation (of a model) behind an interface.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Think of the computational thinking diagram, describe where modelling and encapsulation fit into this diagram.

A

Modelling is involved when one creates an abstraction for a physical-world phenomenon. Modelling results in a mathematical model which can then be automated. To deal with the complexity of automating a model, one can use encapsulation.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Try to draw or explain the Computational thinking Overview Diagram

A

diagram to come

How well did you know this?
1
Not at all
2
3
4
5
Perfectly