* / A V
Poznałeś już techniki pozwalające pisać proste programy w Turbo Pascalu. Mam nadzieję, że odbyło się to bezboleśnie, a efekty okazały się zadowalające. W tym rozdziale zajmiemy się zagadnieniami nieco bardziej skomplikowanymi, które znacznie zwiększą możliwości zapisu różnych algorytmów, ułatwią programowanie, pozwolą na tworzenie programów bardziej zaawansowanych.
Typy, które poznałeś do tej pory, pozwalały na pamiętanie niewielkiej liczby danych. Wielokrotnie zmuszony będziesz do pamiętania większej grupy informacji: wielu liczb stanowiących wyniki jakichś obserwacji, różnych cech jakiegoś przedmiotu, elementów zbioru. W Turbo Pascalu istnieją złożone typy danych, które nam to umożliwią.
Wyobraź sobie, że dysponujesz ciągiem danych tego samego typu. Jako przykład rozważ 200 kolejno wpisanych przez użytkownika liczb rzeczywistych, dla których masz określić wariancję. Można oczywiście pomyśleć o zadeklarowaniu 200 zmiennych, 200 instrukcjach wprowadzania danych, 200 wykonujących obliczenia. Musisz jednak przyznać, że brzmi to jak jakiś koszmar. Naprzeciw wychodzi nam typ tablicowy, grupujący wiele elementów tego samego typu. Są one ponumerowane, a numer jest nazywany indeksem. Poprzez indeks odwołujemy się do pojedynczego elementu tablicy.
Deklaracja zmiennej typu tablicowego przedstawia się następująco:
zm : array [min_l_index..max_l_index.....min_N_index.. max_N_index]
of typ_zmiennych
Jak widać, tablica wcale nie musi być jednowymiarowa — może mieć bardzo dużo wymiarów. Tablicę jednowymiarową często nazywa się wektorem, dwuwymiarową — matrycą. Oto przykładowe deklaracje zmiennych tablicowych:
var
WpisaneLiczby : array [1..200] of Real;
TemperaturaWMiesiacu : array [1..31] of Byte;
MacierzPrzesksztalcenia : array [1..3, 1..3] of Byte;
NazwyDniTygodnia: array [1..7] of String;
WzrostUczniow: array [1..25] of Byte;