Массивы в Pascal: объяснение для начинающих с нуля на примерах

Если Вы новичок в программировании и только начали изучать Паскаль, то Вы даже не имеете представления о том, что такое массивы и для чего они нужны. Когда я только начинал изучать

Паскаль, то я даже представить не мог, что же такое массив. У меня никак не укладывалось в голове, для чего он служит, хотя мне и пытались это “кое-как” объяснить. Сейчас же я постараюсь объяснить Вам, что же такое массивы и для чего они служат, на понятном языке, который поймёт даже неопытный программист.

Во многих книжках по программированию пишут, что массив – это фиксированное количество элементов одного и того же типа, объединенных одним именем, где каждый элемент имеет свой номер.

Для многих “новичков” это что-то заумное, потому как они не могут осмыслить эту информацию и в голове у них получается каша. Можно сделать один вывод – книжки для продвинутых программистов, для всего остального существуют сайты наподобие нашего.

Что же такое массивы в Pascal

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

Итак, из нашего урока по переменным, переменная – это ящик, который имеет определённую размерность, в зависимости от типа ящика.

А массив – это хранилище, в котором хранятся все эти ящики. Только в одном хранилище могут хранится ящики одного типа. Например ящик под яблоки не может хранится в хранилище ящиков под апельсины.

Только в переменных массива есть некоторое отличие от обычных переменных. Во-первых – переменные массива называются элементами. Во-вторых – они не имеют длинных имён, а просто либо нумеруются, либо называются буквами из латинского алфавита.

Рекомендую статью:  Процедуры и функции для работы со строками Паскаль

И, как я уже говорил до этого, в массиве находятся элементы одного типа данных. Например, есть целочисленные массивы типа integer, то есть в элементах этих массивов могут хранится только целые числа. Поэтому в таких массивах не могут находится элементы строкового типа или любого другого.

Напомню, элементы – это ящики (переменные), которые находятся в хранилище (массиве).

В массиве не могут находится элементы с одним и тем же именем (индексом).

Нумерация в массиве строгая. В нём нельзя удалить какой-либо элемент. Можно просто обнулить его значение, но он всё равно будет существовать.

Поэтому удаление элементов из массива в некоторых случаях проблематично, потому как тут придётся проявить свои хорошие познания в логике и алгоритмах.

Оперировать в программе с элементами массива можно также, как и с переменными, только есть одно но – нельзя менять тип элементу массива и нельзя менять тип самого массива.

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

У массива тоже есть имя. Только записывается оно по тем же правилам, что и у переменных.

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

Итак, если подвести итог всего сказанного, то массив – это хранилище, в котором хранятся ящики одного типа и у которых строгий порядок нумерации. Или же так – массив – это именованное объединение элементов одного типа со строгим порядком индексации.

Рекомендую статью:  Pascal. Вложенные конструкции IF-ELSE.

А теперь давайте перейдём непосредственно к самому программированию в Паскаль.

реферальный код Bybit

Массив описывается в том же разделе, что и переменные, а именно в разделе var.

Сначала записываем имя массива, а после двоеточия пишем обозначение того, что это массив, при помощи слова array, затем, желательно вплотную к слову array, в квадратных скобках указываем размерность массива (его индексы). Например так – [1..10] – То есть индексы элементов с первого, по 10. Всего будет 10 элементов в массиве. Затем, после, желательно тоже вплотную, указываем тип элементов массива при помощи частицы of и, через пробел, сам тип элемента массива.

Вот пример полной записи массива с именем mas:

mas: array[1..10]of integer;

Стоит заметить, что можно перечислять массивы одного типа через запятую:

mas, mas2, mas3: array[1..10]of integer;

Также можно сделать индексацию массива при помощи латинских букв:

mas: array['a'..'z']of integer;

То есть элементы массива будут целочисленного типа, но их именем будут не цифры, а буквы.

Давайте разберём, как же всё таки обращаться к элементам массива в программе.

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

mas[1]:=0;

Мы присвоили первому элементу массива значение 0.

А теперь давайте присвоим 0 элементу массива с индексом ‘a’:

mas['a']:=0;

Теперь составим простенькую программу по заполнению массива цифрами от 0 до 9 и выводом их на экран:

var mas: array[1..10]of integer;
      i: integer;
begin
 for i:=0 to 9 do
  mas[i+1]:=i;
 for i:=1 to 10 do
  write(mas[i],' ');
end.

Давайте закрепим знания на практике.

Первое задание.

Напишите программу, которая будет считывать n-ое кол-во элементов и выводить их удвоенное значение на экран.

Второе задание.

Рекомендую статью:  Операторы ввода вывода Паскаль

Напишите программу, которая будет считывать n-ое кол-во элементов массива и выводить чётные элементы стоящие на нечётных местах.

Все решения оставляйте в комментариях. После я их проверю и выберу лучшие, которые размещу в этом уроке, как варианты ответов с авторством этого человека. Конечно всё это будет под спойлером.

Хотелось бы рассмотреть один момент:

Не стоит писать в комментариях, что в программе не хватает строки readln;, так как не все пользуются компилятором free или turbo Паскаль. Просто есть компилятор Pascal ABC, в котором данная строчка не имеет смысла. Советую всем начинающим скачать его с официального сайта.

Я уже 3 года торгую фьючерсами на Bybit и приглашаю тебя присоединиться и получить до $30 000 бонусами плюс скидки на комиссии:

Зарегистрироваться на Bybit

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

Рейтинг
( Пока оценок нет )
Загрузка ...
Кводо.ру