Хорошо, одномерный массив - это просто группа переменных. Полезно, если у вас много чего-то, и вы хотите сэкономить время и пространство. Функционально
element1:=5;
element2:=6;
element3:=7;
...
- это то же самое, что сказать
element[1]:=5;
element[2]:=6;
element[3]:=7;
...
кроме того, что теперь компьютер знает, о чем вы говорите, и вы можете написать что-то вроде:
for i:=1 to n do
element[i]:=element[i]+1;
Дальше, двумерный массив несколько сложнее, но его можно рассматривать как массив массивов. Таким образом, мы могли бы иметь что-то вроде этого:
type
arrayA=array[1..50] of integer;
arrayB=array[1..50] of arrayA;
arrayB=array[1..50,1..50] of integer; //an equivalent declaration in Pascal to the above two
Точнее говоря, двумерный массив - это таблица. Так, например, если arrayA содержит оценки ученика в 50 классах, то arrayB представляет оценки группы учеников. Таким образом, массив B [3,5] будет оценкой третьего ученика в классе № 3.
Легко расширить ту же логику, чтобы добавить другое измерение в массив:
arrayC=array[1..50] of arrayB;
Можно сказать, что C представляет школу, поэтому массив C [2,4,6] - это класс четвертого ученика второй школы в 6-м классе.
Теперь, для чего используются массивы? Хранение групп схожей информации или информации, которую нужно будет обрабатывать в большом количестве. Однако на практике вы в основном будете использовать одномерный, не более чем двухмерный массив. Если вы можете представить свои данные в виде таблицы, вы почти наверняка захотите, например, двумерный массив. Как еще вы представляете шахматную доску, если бы пришлось?
Трехмерные массивы, как правило, используются реже, но что, если вам нужно было сохранить какое-то состояние для каждого элемента таблицы? Что-то вроде:
Table=array[1..50, 1..50, 0..1] of integer;
Тогда третье значение равно 1, если какое-либо условие истинно для данного элемента, и 0 в противном случае. Конечно, тривиальный пример, но это еще один способ более легкого понимания трехмерных массивов.