Массивы
Большинство программ работают не с одним числом, а с несколькими числами. Например, программа бухгалтерского учёта хранит и обрабатывает информацию о зарплате многих работников. Леталка-стрелялка помнит координаты многих врагов, пуль и т.д. Простая переменная для этого не годится. Нужна такая переменная, которая одна хранит несколько чисел. Для этого используется индексированная переменная или массив. (В массиве можно хранить не только числа. Классный журнал – массив строк. Изображения всех противников в игре – массив картинок. )
Чтобы получить одно из нескольких чисел, хранящихся в массиве, после имени переменной указывается индекс – номер этого числа в квадратных скобках. Например, a[5].
Если нужно одинаковым образом обработать несколько чисел в массиве, в качестве индекса берётся переменная-счётчик, которая меняется в цикле, пробегая по очереди все числа в массиве. Например, в задаче требуется сложить все числа, кратные 3, из массива a, содержащего 20 целых чисел.
В разделе VAR массив объявляется с помощью слова array, после которого в квадратных скобках указывают пределы, в которых изменяется индекс. Например, описание a:array[1..20] of integer; говорит о том, что в массиве 20 чисел, нумерация начинается с 1, и все числа – целые. Нумеровать не обязательно с единицы. Возможны и другие описания:
Нарушать указанные в описании пределы нельзя. В приведенном примере попытка использовать элемент массива b[6] или b[-1] приведёт к ошибке.
Каким образом занести исходные данные в массив? Приведём несколько способов:
1. Заполнение массива с клавиатуры:
2. Заполнение массива случайными числами. Например, заполним массив a двадцатью случайными числами в пределах от 10 до 40:
3. Заполнение массива по формулам. Например, занесём координаты двадцати точек окружности в массивы X и Y.
4. А если программисту заранее известны конкретные числа, которые нужно занести в массив? Простой, но скучный способ – занести присваиванием:
Вместо этого можно воспользоваться констант-массивом. Он объявляется не в разделе VAR, а в разделе CONST и заполняется числами в момент объявления:
Хотя этот массив и объявлен в разделе констант, но, так как его тип указан явным образом, то это – типизованный констант-массив, который можно изменять, как и обычный массив.
5. Если один массив уже заполнен числами, и его нужно скопировать без изменений в другой массив (описанный точно так же), то это можно выполнить простым присваиванием: b:=a;.
Например, это может понадобиться, если массив a будет изменяться, но позже понадобится снова с прежними числами. Для этого сначала сделаем резервную копию, а после того, как поработали с массивом, восстановим его из копии тоже присваиваниемa:=b;.
Дата добавления: 2014-12-18; просмотров: 865;