2 Programming Flashcards

1
Q

What is declaration?

A

Declaration is telling the computer what the identifier (name) should be and what type of data should be stored for a variable

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

What is assignment?

A

Assignment is changing the value stored inside a variable. The value stored must match the data type of the variable

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

What is input?

A

Input is collecting data, usually through the keyboard

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

What is input in pseudocode?

A

OUTPUT “enter [something]..”

variable = USERINPUT

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

What is output?

A

Output is putting data onto the screen, usually as text

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

What is output in pseudocode?

A

OUTPUT “text”

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

What are the data types?

A
Character
Real
String
Integer
Boolean
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What is Character data?

A

Character data is a single letter of text data

Eg. ‘a’

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

What is Real data?

A

Real data is fractional numbers.

Eg. ‘0.55’

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

What is String data?

A

String data is text data.

Eg. “Hello”

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

What is Integer data?

A

Integer data is whole numbers.

Eg. ‘12’

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

What is Boolean data?

A

Boolean data is a true or false value.

Eg. ‘True’ or ‘False’

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

What does the type of data determine?

A

The type of the data determines how it is stored and what you can do with the data.

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

What is casting?

A

Casting is the process of converting data from one type to another.

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

What are the reasons for casting?

A

One of the most common reasons for casting is output.
Output must be formatted as a string, and so we may need to convert a certain piece of data to a string.
All input also comes as a string, and must then be converted to other data types.

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

How do you cast to a string?

A

Casting to a string can be done by using the str function

Eg. str(3) gives “3”

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

How do you cast to an integer?

A

Casting to an integer can be done using the int function. Eg. int(3.4) gives 3

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

How do you cast to a real?

A

Casting to a real can be done using the real function.

Eg. real(“3.4”) gives 3.4

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

What are operators?

A

Operators are symbols that represent a specific function within a program

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

What are the Arithmetic operators?

A

Integer division
Modulo operator
Basic Operators

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

What is the integer division operator?

A

The integer division operator returns the quotient (whole part) of a division.
Eg. 5 DIV 2 would give 2.

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

What is the Modulo operator?

A

The modulo operator gives the remainder of the division of two numbers.
Eg. 5 MOD 2 would be equal to 1.

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

What are the basic operators?

A
Addition is done using a + sign.
Subtraction is done using a - sign.
Division is done using a / sign.
Multiplication is done using a * sign.
Exponentiation is done using a ^ sign.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

What is the relational operator?

A

Relational operators compare two values, and produce a True or False value.

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

What are the Equality operators?

A

We can test if two values are equal using the equality operator.
Eg. 4 = 4 is True
We can also test if two values are not equal using the not-equal-to operator
Eg. 4 ≠ 4 would evaluate to False.

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

What are the Boolean operators?

A

AND
OR
NOT

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

What is the AND Boolean operator?

A
The AND boolean operator evaluates if both operands are True
Eg.
True AND True = True
True AND False = False
False AND True = False
False AND False = False
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
28
Q

What is the OR boolean operator?

A
The OR boolean operator evaluates to True if only one of the operands are True.
Eg.
True OR True = True
True OR False = True
False OR False = False
False OR True = True
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
29
Q

What is the NOT boolean operator?

A

NOT negates a logical value
Eg.
NOT True = False
NOT False = True

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

What is Sequence?

A

Sequence is when the computer follows a series of steps in the same order every time it is run

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

When might sequence not be useful?

A

Selection may not be useful for longer code where as we can’t use any selection or iteration structures

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

What is selection?

A

Selection allows us to have decisions made in our program

Selection allows us to execute a section of code depending on whether a condition is met or not.

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

What is an If-statement?

A

If-statements is an easy way of checking if a condition is true

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

What is an If-statement in pseudocode?

A
IF condition1 Then
.action1()
ELSE IF condition2 Then
.action2()
ELSE
.action3()
ENDIF
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
35
Q

Which shape is used to show a selection on a flow diagram?

A

Diamond symbol

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

What is Iteration?

A

Iteration allows a group of statements to be repeated multiple times. Iteration statements are often called loops.

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

What is definite iteration?

A

Definite iteration repeats a block of code for a known number of time

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

What is definite iteration in pseudocode?

A

For i = 0 to 7
.action()
NEXT i

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

What is indefinite iteration?

A

Indefinite iteration is a block of code that will repeat while a specified condition is true.

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

What are the two indefinite iteration types?

A

While loop

Do-until loop

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

What is a While loop in pseudocode?

A

WHILE condition
.action1()
.action2()
ENDWHILE

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

What is a Do-until loop in pseudocode?`

A

REPEAT
.action1()
.action2()
UNTIL condition

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

Which shape is used in a flow diagram for iteration?

A

Diamond shape

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

What is a subroutine?

A

A subroutine is a names block of code within your program

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

What are the advantages of a subroutine?

A
  • Code is easy to read
  • More Efficient
  • More Reliable
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
46
Q

How does a subroutine make code easy to read?

A

There are fewer long blocks of code to understand

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

How does a subroutine make the program more efficient?

A

Blocks of code only have to be created once but can be reused multiple times

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

How do subroutines make the program more reliable?

A

If there are bugs in the program, each subroutine can be tested individually to make sure it works

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

What are parameters?

A

Parameters are special values that can be used to pass values in a subroutine

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

What are arguments?

A

Arguments are the actual value passed into the subroutine

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

What are the two types of subroutine?

A
  • Function

- Procedure

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

What is a function?

A

A function is a subroutine which returns a value

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

What is a procedure?

A

A procedure is a subroutine which does not return a value

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

What is an array?

A

An array is a data structure that stores a fixed number of values under a single identifier.

55
Q

When storing values in an array what must the values all be?

A

The values must be of the same type.

56
Q

When are Arrays useful?

A

Arrays are useful when you have lots of related data that you don’t want to store in multiple variables

57
Q

What is an element?

A

An element is each piece of data inside an array

58
Q

What is an element’s index?

A

An element’s index is it’s position within the array. The counting of the elements starts at zero

59
Q

How would you create an array of x number of items in pseudocode?

A

array name_of_array[10]

60
Q

How would you assign values in an array?

A

name_of_array[x] = “Hello”

x is the element number you wish to put the value number into

61
Q

How can you access values within an array?

A

OUTPUT name_of_array[x]

x is the element number you wish to access

62
Q

What do lists store?

A

Lists store multiple elements under the same identifier.

63
Q

What is the maximum number of elements a list can have?

A

There can be a variable number of elements - they never get full.

64
Q

How can lists be declared?

A

A list can be declared as follows:

list = []

65
Q

How can values be added to the end of the list?

A

Values can be added to the end of the list as follows:

list.append[“value”]

66
Q

What is a 2D list?

A

A 2D list is the data structure which consists of a list of lists.

67
Q

To access an individual list in a 2D list?

A

list = my2DList[4]

68
Q

How would you access an individual element in a 2D list?

A

list[5][0]

This would get the first element of the sixth list

69
Q

What are the uses of a 2D list?

A

A 2D list could be used for a 2D surface or a database

70
Q

How can a 2D list be used for a database?

A

Each inner list can store a record of the database

The outer list can store each record

71
Q

What is a string?

A

Strings are special cases of arrays or lists, where each element is a character

72
Q

What is concatenation?

A

Concatenation is joining two strings together. This can be done with the + sign.
Eg. “Hello” + “World” = “Hello World”

73
Q

How would we access a character in a string?

A

str[3]

This accesses the 4th character in the string

74
Q

How would we see the length of a string?

A

Use the len function

Eg. len(“Hello”) would give 5

75
Q

What are the string operations?

A
  • Length
  • Substring
  • Concatenation
76
Q

What is the purpose of files??

A

Files allow us to store data so it continues even when the program is not running
Files allows programs to carry on where they left off when they are executed

77
Q

What are text file made up of?

A

String data

78
Q

What is binary files mad up of?

A

Binary data

79
Q

Why should we be careful with the way we handle data?

A

We should be careful with the way we handle data so we do not accidentally corrupt them

80
Q

How do we open a file so the operating system knows we are using it?

A

We can use these commands:
openRead(“filename.txt”)
openWrite(“filename.txt”)

81
Q

How do we assign a variable to a file?

A
MyVariable = openRead("filename.txt")
MyVariable = openWrite("filename.txt")
82
Q

How do we read/write in a file?

A

We use the following commands:
myFile.readLine() will return the next line of a file as a string.
myFile.writeLine() will write a line to the file.
myFile.endOfFile() will return True if we reach the end of the file.

83
Q

How do we close a file?

A

We can close a file using the following command:

myFile.close()

84
Q

What is structured data?

A

Structured data refers to any data that resides in a fixed field within a record or file so that it can be easily entered, stored, queried, and analysedof records

85
Q

What are the pros and cons of records?

A

Pros:
Very simple, text-based format.
Can be read by many applications.
Easy to use in programs.

Cons:
Inefficient for large datasets.
Can only store text data.
No built-in means of sorting or searching.

86
Q

What are comma separated values (CSV)?

A

CSV is one method of storing a record
Each record is stored on its own line
Each field is separated by a special character such as a comma

87
Q

What are records made up of?

A

Fields

88
Q

What are identifiers?

A

Identifiers are the names given to variables, constants, and subroutines

89
Q

How should variables be named?

A

Variables should be be lowercase and an underscore should separate each word. They should also have descriptive names
Eg. this_is_my_variable

90
Q

How should constants be named?

A

Constants should be named the same as variables (an underscore separates each letter and they should have descriptive names) but unlike variables the letters are uppercase

91
Q

How should subroutines be named?

A

Subroutines should have lowercase names, with each word separated by an underscore
Eg. calculate_sum()
Subroutines should have descriptive names where possible

92
Q

What is Whitespace?

A

Whitespace is key to good code, since it is used to separate blocks of code and make code easier to read.

93
Q

When should blank lines generally be used?

A

Subroutines should be separated by a blank line.
Blank lines can be used sparingly in subroutines to show sections of the subroutine.
Other lines of code should not have blank space around them.

94
Q

What are comments?

A

Comments are lines of code that are ignored completely by the computer
They are used to add description to your code to make it easy to understand

95
Q

Why is indentation necessary in some coding languages?

A

Indentation is necessary in some languages to control program flow

96
Q

Which character is used for comments in pseudocode?

A

#

97
Q

What is an interface?

A

An interface is a collection of comments which describe a subroutine.

An interface includes:
List of parameters and their types.
Return value and its type.
What the subroutine does.

98
Q

What is input validation?

A

Input validation is the process of making sure that input data meets certain criteria.
If a user’s data is rejected, they should be informed and asked to enter it again

99
Q

What are the input validation rules?

A
Input validation rules include:
Type checks
Range checks
Presence checks
Format checks
Length checks
100
Q

What are type checks?

A

Type checks check the type (e.g. Integer) of the input

101
Q

What are range checks?

A

Range checks check that the data is inside an allowed range, e.g. less than 100

102
Q

What are presence checks?

A

Presence checks check that the required data has been input

103
Q

What are format checks?

A

Format checks check that the data fits a set format, e.g. an email address has an @ symbol

104
Q

What are length checks?

A

Length checks check that the number of characters entered is inside a permitted range.

105
Q

What is authentication?

A

Authentication is the process of checking that a person or system is authorised to use a system.

106
Q

What is the most common form of authentication?

A

The most common form of authentication is to require users to enter a username and password.

107
Q

What happens when a user is authenticated?

A

Once a user has authenticated themselves, they should be able to see data relevant to themselves and no one else.

108
Q

What are errors in software often called?

A

Bugs

109
Q

What gets rid of bugs?

A

Debugging

110
Q

What are the purposes of testing?

A

The purposes of testing are to check that a program:
Works as intended under good conditions
Copes with errors when given bad data

111
Q

What does debugging means?

A

Debugging is to find the cause of the bug and fix it

112
Q

Are bugs deliberate attempts to bring down systems?

A

No

113
Q

What is test data?

A

Test data involves using a range of data, both valid and invalid, to see how the program responds

114
Q

What are the different types of data used in testing?

A

Valid data is correct and of the right format
Extreme data is correct but on the edge of the valid range
Invalid data is not within the acceptable range or is an invalid format
Null data is where no data is entered to see what happens
Erroneous data is of the wrong type altogether

115
Q

What are test plans?

A

Test plans are created to make sure that testing is effective by detailing which test will be performed, which test data will be used, and what the intended outcome will be

116
Q

When should a test plan be created?

A

A test plan should be made before development and is part of the design stage

117
Q

What are High-level languages?

A

High-level languages include most programming languages such as Python, C++ and Java

118
Q

What are High-level languages (HLLs) made up of?

A

High-level languages are made up of human-readable statements which makes it easy to understand

119
Q

What does it mean when High-level languages (HLLs) are portable?

A

High level languages are portable, which means that they can be run on many different types of hardware

120
Q

Why don’t we always use High-level languages (HLLs)?

A

Computers can only process instructions in the form of binary numbers. We have to use special HLL software which translates our HLL source code into executable binary

121
Q

What are Low-level languages (LLLs)?

A

Low-level programming languages are languages which are much closer to computer-understandable binary.

122
Q

Why do we use Low-level languages (LLLs)?

A

LLLs provide exact control over the central processing unit
LLLs need less translation, and often lead to faster code which is useful for computers with low specifications such as embedded systems

123
Q

What are translators?

A

Translators are special software that convert source code into executable binary

124
Q

What are compilers?

A

Compilers are software that translates the whole of a program in one go
Eg. C, C++, Visual Basic and Swift

125
Q

What are the pros of compilers?

A

Compilers produce an executable program:
There is no need to repeat this process more than once per version of the software.
Compilers hide the source code from the end user. This helps to protect developers’ intellectual property.
Compilers will provide a list of errors once it has attempted the compilation process. This can make debugging easier.

126
Q

What are the cons of compilation?

A

The compilation process can be very slow, this slows development if small changes need to be made

127
Q

What are Interpreters?

A

Interpreters are are a type of translator which convert high level languages to executable machine code
Eg. Python and JavaScript

128
Q

What are the cons of Interpreters?

A

Running an interpreted program is slower than a compiled program because we have to translate each line every time we run the software
But it is quicker to get started which can be good for small changes
Interpreters do not produce a compiled program file:
The process must be repeated each time the program is run

129
Q

What are the pros of interpreters?

A

Interpreters stop as soon as they encounter an error. This is useful for debugging
Interpreted languages are portable. This means they can be run on many different types of CPU’s as long as there is an interpreter available for the platform

130
Q

What do assemblers do?

A

Assemblers translate assembly code into executable binary

131
Q

What is Assembly?

A

Assembly is a low-level language where each instruction directly responds to a binary sequence and the assembler replaces the commands with the relevant binary

132
Q

What are the pros of assemblers?

A

Assembly provides exact control over the hardware:
This can lead to very efficient code that takes up little space in memory and is quick to execute.
Assembly can be used on low specification machines.

133
Q

What are the cons of assemblers?

A

Assembly is very difficult to use, and needs deep technical knowledge of the central processing unit and the memory.