Sometimes a programmer needs to store a lot of related data. For example, a game might record the scores achieved by players.
One way to do this would be to declare a variable for each score. So for ten scores, the game program would require ten variables:
And so on, up to
While certainly possible, this is not a practical method of recording such data. Suppose the program needed to record 100 scores? 100 variables would be required!
A better method to solve the problem above is to use an array. An array is a data structure that holds similar, related data. An array is like a collection of boxes, each of which is called an element. Each element has a position in the array, and can hold a value. The data in an array must all be of the same data type.
This way, all data is stored under one identifier. For example, the array called “score” could contain the following information:
Before an array can be used, it must be declared. To declare an array a programmer gives it at least two properties:
For example, in Visual Basic:
Dim score(9) As Integer - would declare an array with ten elements (zero to nine), where each element would store an integer.
Once declared, the name and structure of an array cannot be changed.
It is possible to declare an array without setting the size first. This is called a dynamic array. To use a dynamic array, data must be added to the end of the array, or a new size set each time more data is added.
In pseudo-code, declaring an array before use is not needed.
Values are assigned to an element in an array by referring to the element's position. For example:
score ← 100 - would assign the value 100 to the first element in the array
Values in elements can be overwritten at any point, simply by assigning another value to that element.
Values are retrieved from an element in the array by again referring to the element's position, eg:
OUTPUT score - would display the eighth value held in the array. In the above example, the value would be 98.
A two-dimensional array can hold more than one set of data. This type of array is like a table, with data held in rows and columns.
The following array would hold ten scores for two players. The first player (0) has data stored in the first row. The second player (1) has data stored in the second row.
A two-dimensional array is declared using two values - the number of rows and the number of columns. For example:
array score [1,9] - would give an array with two rows and ten columns
Data is assigned or retrieved by referring to an element's row and column number. For example:
score[0,1] ← 110
print(score[1,4]) - would display the score 78