## array data

The

**is defined with respect to some explicitly or implicitly specified type**

*array***in a recursive sense as a sequence of elements**

*T***, where each**

*e₁, e₂, ...***is either some data of type**

*eᵢ***or again an**

*T***of**

*array*

*T*For example, assume

**stands for**

*T*

*integer*Then an

**of**

*array***is the sequence consisting of the 3 numbers (placed in brackets for notational purposes):**

*integers*

*{4, 5, 8}*Now replace the second number

**with the new sequence**

*5*

*{3, 0, 2, 4}*The original sequence transforms into:

**, which is still an**

*{4, {3, 0, 2, 4}, 8}***of**

*array***due to the recursive part of the above definition.**

*integers*An

**of which none of the elements is itself an**

*array***, is also referred by the more specialized term 1D-array and said to have**

*array*

*rank*

*= 1*The original array

**of the above example is has**

*{4, 5, 8}*

*rank*

*= 1*An

**is referred as a 2D-array if it has at least one element that is a**

*array***and all other elements are non-arrays (i.e. scalar)**

*1D-array*A

**is said to have**

*2D-array*

*rank*

*= 2*The transformed array

**of the above example has**

*{4, {3, 0, 2, 4}, 8}*

*rank***since its second element is the**

*= 2*

*array***, which has**

*{3, 0, 2, 4}*

*rank*

*= 1*An

**is referred as a 3D-array if it has at least one element that is a**

*array***and all other elements are either non-arrays or**

*2D-array*

*1D-arrays*A

**is said to have**

*3D-array*

*rank*

*= 3*An example of such an

**can be constructed substituting the number**

*array***of the transformed array with the array**

*0*

*{9, 1}*The resulting array is

**and has**

*{4, {3, {9, 1}, 2, 4}, 8}*

*rank***since its second element is the**

*= 3*

*array***, which has**

*{3, {9, 1}, 2, 4}*

*rank*

*= 2*Deriscope can handle arrays of any rank, although its Excel interface is limited to arrays of maximum

*rank*

*= 3*