Занятие 1. Понятие массива. Одномерные массивы. Способы задания одномерных массивов
На прошлом занятии мы завершили изучение простых типов Turbo Pascal и сегодня приступаем к изучению структурированных. Их в Turbo Pascal три:
1. Массивы
2. Записи
3. Множества
Мы начнем знакомство с ними с массивов.
В математике, экономике, информатике часто используются различные наборы данных: последовательности чисел, списки фамилий, таблицы. Для обработки наборов однотипных данных мы введем понятие массива. Под массивом мы будем понимать структуру, отличительной особенностью которой является то, что все ее компоненты есть данные одного типа, и после упорядочения к любому из них можно получить доступ, указав его номер. Массивы нужны и тогда, когда для решения задачи необходимо хранение последовательности значений.
Определение. Массив – это совокупность объектов, состоящая из фиксированного упорядоченного числа элементов, имеющих один и тот же тип.
Массивы могут быть одномерными и многомерными (двух-, трехмерными и т. д.). Примером одномерных массивов может быть список фамилий учеников класса, многомерных - таблица умножения, классный журнал, аттестат зрелости.
Элементы, образующие массив, упорядочены таким образом, что каждому элементу соответствует номер (индекс), определяющий его местоположение в общей последовательности. Доступ к каждому элементу осуществляется путём индексирования.
Для описания массива используется словосочетание array of (массив из) и имеет вид:
array [тип индекса] of <тип>
Тип индекса – любой порядковый номер, определяющий границы изменения значений индекса.
Описание массива задается следующим образом:
<имя типа> = array [тип индекса] of <тип данных>;
Например,
Program Name;
Const
m=50;
Type
mas=array [1..m] of integer; {массив из m целых чисел}
digit = array [0 .. 9] of char; {массив десяти символов, имеющих порядковые номера от 0 до 9}
matrix = array [byte] of string; {массив 256 строк, пронумерованных с 0 до 255}
Var
massiv: mas;
m: matrix;
d: digit;
a: array [1..n] of real; {явное описание переменной типа массив}
В качестве индексных типов можно использовать любые порядковые типы, кроме Longint и типов-диапазонов с базовым типом Longint.
Если несколько массивов имеют одинаковый тип индексов и одинаковый базовый тип, то можно при описании объединить массивы в один список. Например
Var
a, b, c: mas;
Такой записью мы объявили три массива вещественных чисел a, b, c, каждый из которых содержит по 50 элементов:
A[1], А[2], ... A[50],_
В[1], В[2], ... В[50],
С[1], С[2], ... С[50].
Представим себе массив в виде набора ячеек памяти, размер которых зависит от значений, содержащихся в массиве. Общий размер памяти, отводимой компьютером для хранения переменной такого типа данных можно определить следующим образом:
Общий объем = количество ячеек памяти * объем одной ячейки
Например, если возьмем переменную
Var
M : digit;
то объем памяти, выделенный под хранение переменной m будет равен 10 байтам и выглядеть это будет приблизительно так:
Индекс элемента | ||||||||||
m | * | = | в | о | с | е | м | ь |
m[4] – элемент массива m, находящийся в ячейке с индексом 4 и равный символу ‘в’
Примечание. Не путайте понятия "индекс" и "тип индекса". Тип индекса используется только в разделе описания массива, а индекс указывается в разделе операторов для обозначения конкретных элементов массива. В качестве индекса может быть выражение, частным случаем которого является константа или переменная.
Над элементами массива можно производить те же операции, которые допустимы для данных его базового типа.
Дата добавления: 2015-05-16; просмотров: 1617;