fundamentals of computational thinking Flashcards

You may prefer our related Brainscape-certified flashcards:
1
Q

define abstraction

A

the process of filtering out the irrelevant information to solve a problem

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

define information hiding

A

all details that do not contribute to the essential characteristics of the problem are omitted

  • simulation problems
  • London Underground map
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What are the four types of abstraction?

A
  • procedural abstraction
  • Functional abstraction
  • problem abstraction
  • data abstraction
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What does problem abstraction consist of?

A
  • involves removing details until the problem reduces to one which has already been solved
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

what does procedural abstraction consist of?

A
  • used to keep the actual values used in computation separate from the overall design.
    • this involves writing procedures and passing parameters
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What does functional abstraction consist of?

A
  • when you call a function to calculate something or to complete a certain tasks to solve the problem
    • it does not require any knowledge about the computation involved
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What does data abstraction consist of?

A
  • the data that is relevant to solving a problem may be in the form of an abstract data structure such as an array
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

define automation

A

refers to building models of a real world objects or phenomena in order to solve a particular problem

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

how does the process of automation occur?

A
  • decide what details are relevant and discard everything else
  • algorithms can then be designed to solve the problem
  • the algorithm is then implemented with program code and written
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

define procedural decomposition

A

it is when you break a problem into smaller sub-problems, so that each sub-problem accomplishes an identifiable task

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

define composition

A

combining data objects to form compound data objects such as a tree or stack

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

benefit of abstraction in high level languages

A

the algorithms used to solve a problem are far removed from the actual machine code instructions which are being carried out

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

what is a finite state machine

A

an abstract representation of how something changes from one state to another in response to a condition or event

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

What are properties of a FSM?

A
  • the machine can only be in one state at a single time
  • it can change from one state to another in response to an event or condition, this is known as a transition
  • The FSM is defined by a list of its states and the conditions for each transition
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Applications of FSM’s

A
  • Robotics
  • video games
  • design of digital hardware systems
  • design of compilers and network protocol
How well did you know this?
1
Not at all
2
3
4
5
Perfectly