
Всем привет. Продолжаем знакомиться с миром программирования. На днях в одной из групп заметил комментарий, то что это уроки по ПАСКАЛЬ, но я уже говорил и повторюсь. Я не пытаюсь вас научить программировать в PASCAL, эти части предназначены для знакомства с программированием, паскаль если можно сказать является подопытным кроликом, здесь новичок может доступно познакомиться с этим очаровательным миром. А конкретно мы будем изучать дальше в других разделах такие языки программирования как JavaScript, PHP и некоторые другие. Ну а сегодня у нас на пути массивы. Поехали =)
Что такое массив
И так, мы знаем, что есть некие переменные и каждая имеет какой-то тип, например переменная "а" с целочисленным типом имеет значение 5. Так вот массивы в некотором роде тоже переменные, но могут содержать в себе несколько значений. Я если честно не люблю работать с массивами в паскаль :D. В дальнейшем вы заметите разницу между массивами в паскаль и массивами в, например, JavaScript.
Рассматриваем, как объявляется массив конкретно в Паскаль:
- var
- ar: array[ 0..3 ] of integer;
Для начала пишем название массива - ar, оно может быть произвольным, дальше пишем системное слово array, что и означает - массив, далее в квадратных скобках пишем длину массива, в моем случае от нуля до трех, ну и в конце указываем тип массива, в моем случае целочисленный. Это все, что нужно, чтобы объявить массив. Теперь посмотрим как с ним работать. Для этого сразу начнем писать простой пример.
И так пишем заготовочку:
- program pr1;
- uses crt;
- begin
- clrscr;
- readkey;
- end.
Объявим массив длинной от нуля до трех со строковым типом данных:
- program pr1;
- uses crt;
- var
- ar: array[ 0..3 ] of string;
- begin
- clrscr;
- readkey;
- end.
Объявим переменную i с целочисленным типом данных:
- program pr1;
- uses crt;
- var
- ar: array[ 0..3 ] of string;
- i: integer;
- begin
- clrscr;
- readkey;
- end.
Теперь отложим руки в сторону, отдохнем и поговорим.
У нас были переменные, которым мы могли присвоить некое значение, как например переменной i, мы могли написать i знак присвоения и число 3, все просто. Но как быть с массивом, ведь это одна переменная ar, а мы говорим о множестве значений в одной переменной. Для этого мы и объявили переменную i, она нам поможет. Но сначала посмотрим на простую ситуацию.
Индекс массива
Что бы присвоить значения массиву, достаточно взглянуть на то, как мы его объявили - array[0..3], от нуля до трех - это индексы значений массива, то есть тут будут четыре значения и у каждого будет свой индекс - нуль, один, два, три. И чтобы присвоить какое-либо значение достаточно указать индекс:
- ar[2] = 'Строка';
Что означает, в массиве значение под индексом два равно - 'Строка'. Все предельно просто.

Теперь вернемся к примеру и продолжим. Теперь добавим значения в массив. Для этого мы запустим цикл и при каждой итерации будем запрашивать у пользователя ввести информацию, далее введеннную информацию мы будем добавлять в массив.
Цикл будет работать от 0 до 3, то есть как и длина нашего массива, каждый раз переменная i будет другой, она и будет выступать в качестве индекса, то есть будет так:
- ar[ i ]
"итый элемент", а теперь полностью код:
- program pr1;
- uses crt;
- var
- ar: array[ 0..3 ] of string;
- i: integer;
- begin
- clrscr;
- for i:= 0 to 3 do
- begin
- write('Имя: ');
- readln( ar[i] );
- end;
- readkey;
- end.
Теперь добавим еще один массив той же длины, но с целочисленный типом:
- program pr1;
- uses crt;
- var
- ar: array[ 0..3 ] of string;
- art: array[ 0..3 ] of integer;
- i: integer;
- begin
- clrscr;
- for i:= 0 to 3 do
- begin
- write('Имя: ');
- readln( ar[i] );
- end;
- readkey;
- end.
И проделаем те же действия с ним в массиве:
- program pr1;
- uses crt;
- var
- ar: array[ 0..3 ] of string;
- art: array[ 0..3 ] of integer;
- i: integer;
- begin
- clrscr;
- for i:= 0 to 3 do
- begin
- write('Имя: ');
- readln( ar[i] );
- write('Возраст: ');
- readln( art[i] );
- end;
- readkey;
- end.
Теперь выведем наши получившиеся массивы с помощью еще одного цикла:
- program pr1;
- uses crt;
- var
- ar: array[ 0..3 ] of string;
- art: array[ 0..3 ] of integer;
- i: integer;
- begin
- clrscr;
- for i:= 0 to 3 do
- begin
- write('Имя: ');
- readln( ar[i] );
- write('Возраст: ');
- readln( art[i] );
- end;
- for i:= 0 to 3 do
- writeln(ar[i]+' - '+art[i]);
- readkey;
- end.
Вот и все, на таком простом примере можно понять как работают массивы. То есть они легко помогают когда мы работаем например с большим количеством информации, и чтобы каждый раз не писать отдельную переменную под 100 имен, достаточно написать массив имен и пустить их по кругу по циклу, производя действия над ними.
Заключение
Массивы и циклы могут стать вашими хорошими друзьями, в следующей части рассмотрим двумерные или многомерные массивы. Всем спасибо за урок, пока =)
Предыдущая статья