Что такое массив?
Основное предназначение современных компьютеров — обработка большого количества данных. При этом надо как-то обращаться к каждой из тысяч (или даже миллионов) ячеек с данными. Очень сложно дать каждой ячейке собственное имя и при этом не запутаться. Из этой ситуации выходят так: дают имя не ячейке, а группе ячеек, в которой каждая ячейка имеет собственный номер. Такая область памяти называется массивом.
Массив — это группа переменных одного типа, расположенных в памяти рядом (в соседних ячейках) и имеющих общее имя. Каждая ячейка в массиве имеет уникальный номер.
Для работы с массивами нужно в первую очередь научиться:
• выделять память нужного размера под массив;
• записывать данные в ячейку массива;
• читать данные из ячейки массива.
Чтобы использовать массив, надо его объявить: определить тип массива (тип входящих в него элементов), выделить место в памяти и присвоить имя. Имена массивов строятся по тем же правилам, что и имена переменных.
В школьном алгоритмическом языке массивы называются таблицами. При их объявлении к названию типа данных добавляется слово таб:
целтаб А [1: 5]
вещтаб V[0:5]
логтаб L[-5:5]
симтаб S[65:90]
В квадратных скобках через двоеточие записываются границы индексов — номеров ячеек массива. В приведённом примере массив А — это массив целых значений, ячейки имеют номера от 1 до 5. Массив вещественных значений V содержит 6 элементов с номерами от нуля 1 до 5. В логическом массиве L ячейки нумеруются от -5 до 5, а в символьном массиве S — от 65 до 90. В школьном алгоритмическом языке объявлять массивы (как и переменные) можно в любом месте программы.
1 Нумерация с нуля часто используется в языках программирования, например в языке Си и родственных ему языках.
В языке Паскаль массивы объявляются в блоке объявления переменных (выше ключевого слова begin) и начинаются ключевым словом array (в переводе с англ. — массив). Объявления, аналогичные приведённым на школьном алгоритмическом языке, выглядят так:
var A: array[1..5] of integer;
V: array[0..5] of real;
L: array[-5..5] of boolean;
S: array[65..90] of char;
Минимальный и максимальный индексы разделяются двумя точками.
Для того чтобы обратиться к элементу массива, нужно записать имя массива и в квадратных скобках — индекс нужного элемента, например А[3]. Индексом может быть не только число, но значение целой переменной или арифметического выражения целого типа.
В следующем примере массив заполняется квадратами первых натуральных чисел:
В школьном алгоритмическом языке можно при объявлении массива указывать вычисляемые границы индексов, зависящие от переменных. В данном случае массив А состоит из 10 элементов, потому что к моменту его объявления в переменной N было число 10.
В Паскале при объявлении границ индексов массивов можно использовать константы — постоянные величины, имеющие имя. В приведённом примере с помощью ключевого слова const объявлена константа N, равная 10. Константы обычно вводятся выше блока объявления переменных. Использование констант очень удобно, потому что при изменении размера массива в программе нужно поменять только одно число — значение этой константы.
Далее во всех примерах мы будем считать, что в программе объявлен целочисленный массив А с индексами от 1 до N, а также целочисленная переменная i, которая будет обозначать индекс элемента массива. Чтобы ввести такой массив или вывести его на экран, нужно использовать цикл, т. е. ввод и вывод массива выполняется поэлементно:
В этом примере перед вводом очередного элемента массива на экран выводится подсказка. Например, при вводе 3-го элемента будет выведено: А[3]=. После вывода каждого элемента ставится пробел, иначе все значения сольются в одну строку.
В учебных примерах массивы часто заполняют случайными числами:
Следующая страница Перебор элементов