• Что бы вступить в ряды "Принятый кодер" Вам нужно:
    Написать 10 полезных сообщений или тем и Получить 10 симпатий.
    Для того кто не хочет терять время,может пожертвовать средства для поддержки сервеса, и вступить в ряды VIP на месяц, дополнительная информация в лс.

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

  • Гость, Что бы Вы хотели увидеть на нашем Форуме? Изложить свои идеи и пожелания по улучшению форума Вы можете поделиться с нами здесь. ----> Перейдите сюда
  • Все пользователи не прошедшие проверку электронной почты будут заблокированы. Все вопросы с разблокировкой обращайтесь по адресу электронной почте : info@guardianelinks.com . Не пришло сообщение о проверке или о сбросе также сообщите нам.

Массивы

Lomanu4 Оффлайн

Lomanu4

Команда форума
Администратор
Сообщения
1,163
Симпатии
222
Баллы
155
VK
ОДНОМЕРНЫЕ МАССИВЫ. Массив (array) представляет собой упорядоченный набор элементов одного и того же типа, который для обеспечения доступа к элементам использует индекс. Одномерным является массив с размерностью 1. Рассмотрим пример объявления одномерного массива:
Код:
var Name: array [1..20] of integer;
- объявлен массив с именем Name, содержащий 20 целых чисел.
Элемент массива инициализируется путем присвоения значения с использованием индекса элемента:
Код:
Name [1] := 15;
     Name [2] := 20;
В рассмотренном примере индексы определены ограниченным целым типом. Также для индексации массива могут использоваться любые ограниченные типы, например:
Код:
var Ch: array ['a'..'z'] of char;
это массив символов, индексами которого являются все символы латинского алфавита в нижнем регистре.

МНОГОМЕРНЫЕ МАССИВЫ.
Код для объявления двухмерного массива практически идентичен коду для одномерного массива. После объявления доступ к любому элементу массива осуществляется с помощью второго индекса. Приведенный ниже код демострируетбыструю инициализацию с применением вложенных циклов for:
Код:
procedure TForm1.Button1Click(Sender: TObject);
var
    MyArray: array [1..30, 1..30] of Integer;
    Index1, Index2: Integer;
begin
for Index1 := 1 to 30 do
   for Index2 :=    1 to 30 do
       MyArray [Index1, Index2]  :=5;
end;
В приведенном примере всем элементам массива присваивается значение 5.


ДИНАМИЧЕСКИЕ МАССИВЫ. Динамические массивы представляют собой удобное средство для хранения данных для тех задач, где заранее неизвестно количество элементов в обрабатываемых массивах. Динамические массивы не имеют фиксированного размера или длины. Для объявления такого массива достаточно записать:

var My_Array : array of Real; {объявляется одномерный массив типа Real}

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

SetLength(My_Array,100);
После вызова этой процедуры будет выделена память для 100 элементов массива, которые будут проиндексированы от 0 до 99 (индексирование начинается с нуля, а не с единицы). Рассмотрим пример заполнения массива используя цикл:

Код:
procedure TForm1.Button1Click(Sender: TObject);
var
    My_Array: array of Real; {объявляем безразмерный массив элементов типа Real}
    i: Integer;
begin
SetLength(My_Array,100);  {выделяем память для динамического массива}

for i:=0 to 99 do My_Array[i]:=i;  {заполняем массив}

showmessage(floattostr(My_Array[98]));   
{выводим на экран значение элемента номер 98}
end;
 
Вверх Снизу