1. Tablica wielowymiarowa - typ
Poznane dotąd przez nas tablice były tablicami jednowymiarowymi. Te tablice charakteryzują się tym. że do określenia w takich tablicach miejsca elementu wystarczy podać wartość jego indeksu. Inaczej, w takich tablicach element ma tylko jedną współrzędną, jeden indeks elementu. Język Pascal, podobnie jak inne współczesne języki programowania pozwala na używanie tablic wielowymiarowych. w których każdy element posiada kilka indeksów (współrzędnych). Najczęściej spotykane w praktyce są tablice dwu i trójwymiarowe, choć można stosować tablice o większej liczbie wymiarów. Na tym wykładzie omówione będą głównie tablice dwuwymiarowe. Jednowymiarowe tablice są czasem używane do reprezentowania wektorów, natomiast najczęstszym zastosowaniem macierzy dwuwymiarowych jest reprezentowanie macierzy. Typ tablicy dwuwymiarowej możemy określić w' Pascalu, w' sekcji type programu lub podprogramu. na trzy podstawowe sposoby. Pierwszy sposób definicji typu tablicy dwuwymiarowej możemy opisać następującym wzorcem:
wiersz - arrau lid .. igl of typ_elementu: macierz = arrau lidl .. ig II of wiersz:
W tym wypadku definicja typu tablicy jest dwustopniowa. Najpierw określamy typ elementów które znajdują się w pojedynczym wierszu, a następnie definiujemy ile wierszy znajdzie się w jednej macierzy. Ilość elementów w wierszu określa ilość kolumn macierzy. Zakresy wartości indeksów określamy tak samo. jak to ma miejsce w przypadku tablic jednowymiarowych. Jeśli id=idl i ig=igl, to mamy do czynienia z macierzą kwadratową. Sposób definiowania typów' tablic dwuwymiarowych łatwo rozszerzyć na tablice o większej liczbie wymiarów'. Jeśli chcielibyśmy zdefiniować typ tablicy trójwymiarowej, to następny typ tablicowy miałby elementy typu macierz. Inny sposób deklaracji typu tablicy dwuwymiarowej wynika z zaprezentowanego wyżej. Oto wzorzec definicji:
macierz = arrau lid .. igl of arrau lidl .. igl! of typ_elementw
Jak wspomniano wcześniej jest też trzeci sposób definicji typu macierzowego:
macierz = arrau lid.. ig. idl .. igllof typ_elementu:
Jeśli w programie zdecydujemy się używać funkcji Iow i high do określania indeksów dolnych i górnych zarówno dla wierszy, jak i dla kolumn, to będziemy zmuszeni zastosować pierwszy sposób definiowania typu tablicy dwuwymiarowej. W pozostałych przypadkach możemy używać dowolnego sposobu
2