Теория

Название регулярный тип (или ряды) массивы получили за то, что в них объединены однотипные (логически однородные) элементы, упорядоченные (урегулированные) по индексам, определяющим положение каждого элемента в массиве.

Массив - совокупность однотипных данных, хранящихся в последовательных ячейках памяти и имеющих общее имя.
Данные в ячейках называются элементами массива. Все элементы пронумерованы по порядку, и этот номер называется индексом элемента массива.
Все элементы массива имеют один и тот же тип. Сам массив при этом имеет имя - одно для всех элементов. Для обращения к конкретному элементу массива необходимо указать имя массива и (в квадратных скобках) индекс элемента.
Простейший вид массива - одномерный массив.

А - имя массива, числа в клетках таблицы - элементы массива.
В записи А [ 3 ] = -8 :
  • A - имя массива,
  • 3 - номер элемента массива (индекс),
  • А [ 3 ] - обозначение третьего элемента массива,
  • -8 - значение третьего элемента массива.
Массив называется регулярным типом, потому что в нем объединены логически однородные элементы, упорядоченные по индексам, определяющим положение каждого элемента в массиве. Количество размерностей (индексов, координат), необходимых для обращения к элементу массива, является ключевой характеристикой массива.
Размер массива - общее число элементов массива. Размер массива задается при описании типа массива. Если одномерный массив "=" array [n1 .. n2]  of  <Тип>, то его размер равен n2 - n1 + 1. Размер многомерного массива равен произведению размеров образующих его одномерных массивов.
!  Количество элементов массива должно быть фиксированным, то есть определяться при трансляции программы.
Описание (объявление) массива.
Одномерный массив.
  1. В разделе переменных Var <имя массива> : Array [<тип индекса>]  of  <тип элементов>;
  2. В разделе описания типов Type  <имя типа> = Array [<тип индекса>]  of <тип элементов> ; Var  <имя массива> : <имя типа>;
  3. В разделе констант Const <имя массива> : Array [<тип индекса>] of  <тип элементов> (<список элементов>);
Например, 1) Var  A : array [1 .. 10] of  integer;
                      2) Type
                                     Mas = array [1 .. 10]  of  integer;
                           Var  A : Mas;
                        3) Const  N=5;
                             A : Array  [1 .. N]  of   integer = (-8,0,4,1,3);
Способы заполнения одномерных массивов
  1. Ввод массива с помощью оператора присваивания
    For :to n do    A [ i ] := <выражение>;
  2. Ввод массива с клавиатуры оператором Read.
For :1  to  n  do  Read ( A [ i ] );
3. Ввод массива оператором случайных чисел Random на интервале
[ a ; b ]
( a ; b )
For :=1  to n do A [ i ] := Random (b-a+1)+a;For :=1  to n do A [ i ] := Random (b-a)+a;
4. Ввод массива в разделе констант (производится вместе с объявлением). Например:
Const  N=5;
      A : Array [1 .. N]  of  integer = (-8, 0, 4, 1, 3);
5. Способ заполнения массива − чтение значений элементов из файла. Можно заранее создать ти­пизированный файл одномерных массивов (например, по тридцать элементов), а затем считывать из него сразу целый массив. Воспользуемся текстовым файлом, так как его создавать намного удобнее. Пусть в файле записано несколько строк, а в каждой из них по 30 целых чисел. Тогда вся программа может быть такой:
Program Example_91;
Const n=30; {Количество элементов массива}
        Type myarray = Array [1 .. n]  of  Integer;
Var    myarray;
            F :  text;
Procedure Init3 (Var myarray); {Процедура заполнения (инициализации) массива}
Var Integer;
Begin
             For i := 1  To  n Do Read f[ i ]) {Чтение из файла очередного числа}
End;
Procedure Print (myarray);  {Процедура вывода (распечатки) массива}  {Вывод массива}
Var Integer;

Begin

           For := 1 To n Do Write (i ] : 3);  {Вывод i-гo элемента}
            Writeln;
End;
Begin {Связываем файловую переменную с файлом на диске}
           Assign (F'путь\имя файла');
           Reset F ); {Открываем файл для чтения}
            While  Not   EOf  (F)  Do
             Begin {Считываем очередную строку}
                          Init3 (А); {Обращение к процедуре заполнения массива}
                          Print A ); {Обращение к процедуре вывода}
                           Readln F );
             End;
              Close ); Readln;
End.
Вывод одномерного массива
  1. Вывод линейного массива
В строку
В столбец
For  i  := 1  to  n  do  Write (a [ i ],'  ');For i :=1  to  n  do  Writeln (],' ');
Массивы относятся к структурам прямого доступа. Это означает, что возможно напрямую (не перебирая предварительно все предшествующие компоненты) обратиться к любой интересующей нас компоненте массива.

Комментариев нет:

Отправить комментарий