# Multi-Dimensional Arrays

So far all these arrays have been one-dimensional. That is, a single number could locate any value in the array. However sometimes data is naturally represented by more than one number. For instance a position on the earth requires a latitude and a longitude.

The most common kind of multidimensional array is the two-dimensional array. If you think of a one-dimensional array as a column of values, you can think of a two-dimensional array as a table of values like this

 c0 c1 c2 c3 r0 0 1 2 3 r1 1 2 3 4 r2 2 3 4 5 r3 3 4 5 6 r4 4 5 6 7

Here we have an array with five rows and four columns. It has twenty total elements. However we say it has dimension five by four, not dimension twenty. This array is not the same as a four by five array like this one:

 c0 c1 c2 c3 c4 r0 0 1 2 3 4 r1 1 2 3 4 5 r2 2 3 4 5 6 r3 3 4 5 6 7

We need to use two numbers to identify a position in a two-dimensional array. These are the element's row and column positions. For instance if the above array is called `J` then `J[0][0]` is 0, `J[0][1]` is 1, `J[0][2]` is 2, `J[0][3]` is 3, `J[1][0]` is 1, and so on.

Here's how the elements in a four by five array called `M` are referred to:

 M[0][0] M[0][1] M[0][2] M[0][3] M[0][4] M[1][0] M[1][1] M[1][2] M[1][3] M[1][4] M[2][0] M[2][1] M[2][2] M[2][3] M[2][4] M[3][0] M[3][1] M[3][2] M[3][3] M[3][4]

Copyright 1997, 1998 Elliotte Rusty Harold
elharo@metalab.unc.edu
Last Modified September 19, 1998