generality not only provides most significant and powerful programming facilitybut at the same time it also gives rise to one of the most frequently encountered programming mistakesthe resulting value may be outside the interval specified as the range of indices of the array we will assume that decent computing systems provide warning in the case of such mistaken access to non-existent array component the cardinality of structured typei the number of values belonging to this typeis the product of the cardinality of its components since all components of an array type are of the same base type we obtain card(tcard( ) constituents of array types may themselves be structured an array variable whose components are again arrays is called matrix for examplemarray of row is an array consisting of ten components (rows)each constisting of four components of type real and is called matrix with real components selectors may be concatenated accordinglysuch that mij and [ ][jdenote the -th component of row miwhich is the -th component of this is usually abbreviated as [ , ]and in the same spirit the declaration marray of array of real can be written more concisely as marray of real if certain operation has to be performed on all components of an array or on adjacent components of section of the arraythen this fact may conveniently be emphasized by using the for satementas shown in the following examples for computing the sum and for finding the maximal element of an array declared as var aarray of integer(adens *sum : for : to - do sum : [isum end : max : [ ]for : to - do if max [ithen :imax : [kend end in further exampleassume that fraction is represented in its decimal form with - digitsi by an array such that si < kdi - * * - *dk- now assume that we wish to divide by this is done by repeating the familiar division operation for all - digits distarting with = it consists of dividing each digit by taking into account possible carry from the previous positionand of retaining possible remainder for the next positionr : * + [ ] [ : div : mod this algorithm is used to compute table of negative powers of the repetition of halving to compute - - is again appropriately expressed by for statementthus leading to nesting of two for statements