Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Pascal.doc
Скачиваний:
5
Добавлен:
18.11.2018
Размер:
138.75 Кб
Скачать

5. Массивы.

Массив - это структурированный тип данных, который используется для описания упорядоченной совокупности фиксированного числа элементов одного типа, имеющих общее имя. Для обозначения элементов массива используются имя переменной-массива и индекс.

Type < имя типа массив > = Array [ <тип индекса>] Of < тип элементов >;

Var < имя переменной > : < имя типа массив >;

    < тип индекса > - перечисляемый, логический, символьный, диапазон

Поскольку тип массив относится к стандартным типам языка Паскаль, то он может быть использован в описаниях переменных и без определения для него специального имени в разделе описания типов. 

Var < имя переменной > : Array [ < тип индекса > ] Of < тип элементов >;

Массивы обычно используются в тех программах, где требуется сохранять во время выполнения программы в памяти ЭВМ некоторую совокупность величин одного типа. Например, это требуется для задач, алгоритмы решения для которых предполагают неоднократное обращение к элементам заданной последовательности. Кроме того, массивы часто используются и в тех случаях, когда для решения задачи достаточно однократного использования каждого элемента последовательности и, следовательно, нет необходимости хранить все элементы в памяти ЭВМ. Примерами таких задач являются все задачи с последовательностями из предыдущего параграфа.

Пример. Дана последовательность из n вещественных чисел. Упорядочить ее элементы по возрастанию.     Решение: рассмотрим  метод сортировки выбором.     Отыскивается максимальный элемент и переносится в конец массива; затем этот метод применяется ко всем элементам, кроме последнего (он уже находится на своем окончательном месте), и т.д. 

Program SortCase; Const n=10; Type mas:Array[1..n] Of Real; Var     x : Mas;     i,j,m : Integer;         r : Real;

Begin     {ввод элементов массива}     For i:=1 To n Do Readln(x[i]);     For j:=n Downto 2 Do         Begin {поиск m-номера max x[1..j]}             m:=1;             For i:=2 To j Do If x[i]>x[m] Then m:=i;             {перестановка элементов x[m] и x[j]}             r:=x[j]; x[j]:=x[m]; x[m]:=r         End;     {вывод элементов упорядоченного массива}     For i:=1 To n Do Writeln(x[i]) End.

5.1. Одномерные массивы. Использованный в описанном выше примере массив относится к тому виду массивов, элементы которых имеют простой тип (целый, вещественный, логический и т.д.). Для указания конкретного элемента массива используется один индекс. Такие массивы называют одномерными.  

5.2. Многомерные массивы. Элементы массива не обязательно должны иметь простой тип, но и сами могут являться массивами, например:

Type mas=Array[1..10] Of Array[1..20] Of Integer; Var A:mas;

Тогда  A[i][j]- это j -ый элемент i -го элемента массива A. В языке Паскаль такие конструкции можно записывать в более короткой форме.

Type mas=Array[1..10,1..20] Of Integer и указывать элемент массива такого типа в виде A[i,j]. Т.к. здесь используется два индекса для задания элементов, то массив называют двумерным. В общем случае можно использовать и r - мерные массивы. Двумерные массивы являются той структурой данных, которая наиболее естественна для задач с матрицами.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]