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 a 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 of stack overflow,
  • Difficult to trace.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

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

A
  • 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 some advantages of using local variables over global variables.

A
  • 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 some advantages of a modular design.

A
  • 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 reusability.
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 its 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 some features of IDEs.

A
  • 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.