2.2.1 Programming Techniques Flashcards

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

Name the three programming constructs.

A

Sequence, branching and iteration.

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

Which two categories of loop is iteration split up into?

A
  • Count-controlled

- Condition-controlled

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

Describe how the branching programming construct works.

A

A certain block of code is run if specific condition is met, using IF statements.

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

What is recursion?

A

A programming construct in which a subroutine calls itself during its execution until the stopping condition is met.

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

What is the base case in recursion?

A

A condition that must be met in order for the recursion to end.

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

State two advantages of recursion.

A
  • Can be represented in fewer lines of code.

- Easier to express some functions recursively than using iteration.

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

State a disadvantage of recursion.

A
  • Inefficient use of memory.
  • Danger if stack overflow.
  • Difficult to trace.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Give two pieces of information that are stored on the call stack.

A

Two from:

  • Parameters
  • Return addresses
  • Local variables
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Define scope

A

The section of the program in which a variable is accessible.

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

Give two advantages of using local variables over global variables.

A

Two from:

  • Less memory is used
  • Self-contained so unaffected by code outside of the subroutine
  • Take precedence over global variables with the same name
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What is top-down design?

A

A technique used to modularise programs in which the problem is continually broken down into sub-problems, until each can be represented as an individual, self-contained module which performs a certain task.

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

State two advantages of a modular design.

A

Two from:

  • Makes a problem easier to understand and approach
  • Simpler to divide tasks between a team
  • Easier to manage project
  • Self-contained modules simplify testing and maintenance
  • Greater readability
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Give another name for top-down design.

A

Stepwise refinement

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

What is the difference between procedures and functions?

A

Functions must always return a single value while a procedure does not always have to return a value.

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

What does it mean to pass a parameter to a subroutine by reference?

A

The address in memory of the parameter is passed to the subroutine so it’s value outside of the subroutine will be updated.

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

State two features of IDEs

A

Two from:

  • Stepping
  • Variable watch
  • Breakpoint
  • Source code editor
  • Debugging tools
17
Q

What does IDE stand for?

A

Integrated Development Environment

18
Q

What is encapsulation in object-oriented programming?

A

When attributes are declared as private so can only be accessed and edited by public methods.

19
Q

Describe the purpose of encapsulation in object-oriented programming.

A

Program complexity is reduced by protecting data from being accidentally edited by other parts of the program.