Yurijnd.com
Четверг, 06.02.2025, 20:04
Меню сайта

Вход на сайт

Поиск

Друзья сайта
  • Официальный блог
  • Сообщество uCoz
  • FAQ по системе
  • Инструкции для uCoz

  • Статистика

    Онлайн всего: 3
    Гостей: 3
    Пользователей: 0

    Delphi. Pascal
    Урок 6. Работа с массивами

    11. Массивы

    Тип массива Описание массива Пример
    Одномерный массив (вектор) array [ тип-индекса ] of тип-элемента var a: array [ 1..100 ] of integer;
    Тип массива Описание массива Пример
    2-мерный массив (матрица) array [ тип-индекса-1, тип-индекса-2 ] of тип-элемента; var a: array [ 1..M, 1..M ] of real;
    3-мерный массив array [ тип-индекса-1, тип-индекса-2, тип-индекса-3 ] of тип-элемента; var a: array [ 0..1, 0..M, 0..N ] of char;
    4-мерный массив array [ тип-индекса-1, тип-индекса-2, тип-индекса-3, тип-индекса-4 ] of тип-элемента; var a: array [ 0..1, 0..1, 0..1, 'a'..'z' ] of boolean;

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

    Вот пример описания и работы со статическим массивом:

    var
     a: Array [1..6] of integer; //заводим массив
     i: integer;
    ...
     for i:=Low(a) to High(a) do
     begin
     Writeln('Enter ', i, '-th element');
     ReadLn(a[i]); //Читаем i-й элемент
     Writeln('a[', i, ']=', a[i]);
     end;

    Приведенный пример просит у пользователя заполнить одномерный массив из нескольких элементов (из 6) целыми числами.

    Обратите внимание на объявление массива:

     a: Array [1..6] of integer;

    В квадратных скобках мы указываем нижний и верхний номера для индекса массива. Если нам надо определить двумерных массив (например для задания игрового поля для шахмат), то мы должны написать что-то вроде

     chess: Array [1..8, 1..8] of integer;

    т. е. размерности массива пишеться в одной паре квадратных скобок и разделяются запятой. То же правило действует и для многомерных массивов.

    Далее обратите внимание на функции Low() и High(). Они принимают в качестве параметра имя массива и возвращают номер первого и последнего элементов соответственно. Рекомендуется использовать именно эти функции, а не писать конкретные значения для номера первого и последнего элементов - так в последствии будет легче вносить в программу необходимые изменения. Наряду с этими двумя функциями существует и функция Lenght(), которая возвращает длину массива. Действие этих функций для одномерного массива понятно. Для многомерных же массивов они возвращают значения (нижний и верхний номера и длину) для первого измерения.

     

    Copyright MyCorp © 2025
    Сделать бесплатный сайт с uCoz