Массивы в Паскале

Для описания набора однотипных данных в программировании используется матрица, которая является одним из основных инструментов программирования. Массивы используются в сочетании с циклами. Основы обработки наборов данных в языке Паскаль изучаются в курсе информатики в 9 классе.

Массивы в Паскале

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

Массивы в Паскале — это именованные коллекции элементов одного типа, ранжированные в порядке возрастания их индексов.

Массивы в Паскале

Рис. 1. Одномерная матрица.

Массив объявляется с использованием ключевого слова ARRAY, которое указывает размер массива и тип его элементов.

Например, массив в разделе описания переменных можно указать так:

Var Mass: массив[1..10] целых чисел;

Доступ к элементу в массиве осуществляется через указание индекса. Например, число 10 в массиве Mass имеет порядковый номер 6. Обращаться к конкретной ячейке следует по имени массива, указывая в квадратных скобках номер индекса, например, Mass [6].

Массивы в Паскале

Рис. 2. Двумерный массив.

Массивы могут быть как одномерными, так и многомерными. Двумерная матрица выглядит как таблица, трехмерная – как кубик Рубика.

Массивы в Паскале

Рис. 3. Трехмерная матрица.

Заполнение массива данными

Заполнить пустой массив данными можно следующими способами:

  • В тексте программы присвойте ячейкам номера.
  • Организуйте ввод с клавиатуры.
  • Используйте процедуру генерации случайных чисел.

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

заполнение массива массы (10) случайными числами можно реализовать программно следующим образом:

программа Массив ;
вар я: целое число; Массив: массив[1..10] целых чисел;

рандомизировать;

начинать
для i:= от 1 до 10 делаем массу [i]:=random(100);

конец.

Чтобы просмотреть сгенерированную матрицу на экране, в основное тело программы можно дополнительно добавить процедуру вывода элементов матрицы на экран:

для i:= от 1 до 10 write (mass [i],` `);

Как видно из примера, для организации поиска индексов массива используется циклическая конструкция оператора повторения с заданным количеством повторений FOR..TO..DO.

Действия с массивами

Работа с матрицами данных основана на решении таких типичных задач, как:

  • Определите сумму или произведение элементов матрицы.
  • Найдите товар по определенному критерию.
  • Сортировка массива.

Давайте рассмотрим примеры программ обработки массивов

Определение суммы элементов массива

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

Перед фрагментом программы, вычисляющим сумму или произведение, следует инициализировать переменную, в которой будет накапливать результат. Если вычисляется сумма, то начальное значение переменной должно быть равно нулю. Если определяется произведение, то переменная должна иметь начальное значение равное единице.

Программно определение суммы можно записать так:

программа Сумма;

вар сумма, я: целое число; Массив: массив[1..10] целых чисел;

начинать

с:=0;

рандомизировать;

для i:= от 1 до 10 сделайте Mass[i]:=random(100);

для i:=1 до 10 следует написать (Mass[i],` `);

для i:= от 1 до 10 do sum:=sum+mass[i];

writeln(‘Сумма элементов массива из десяти целых чисел равна ‘, sum)

конец.

Поиск элемента массива

В программируемых задачах обычно ищут наибольшее или наименьшее число или число, равное заданному.

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

Программа для поиска элемента в массиве может выглядеть так:

программный поиск;

var x, i, k: целое число; Массив: массив[1..10] целых чисел;

начинать

write(‘Введите целое число k = ‘);

readln(к);

рандомизировать;

для i:= от 1 до 10 сделайте Mass[i]:=random(100);

для i:=1 до 10 следует написать (Mass[i],` `);

п:=0;

для i:= от 1 до 10 сделать

если Mass[i]=k, то n:=i;

if n=0 then write(‘В матрице нет числа, равного заданному’) else write(‘Порядковый номер искомого числа равен’,i)

конец.

Сортировка массива

Сортировка массива предполагает расположение элементов массива в порядке возрастания или убывания. Существуют разные способы сортировки элементов массива.

Самый простой метод сортировки по возрастанию — найти наименьший элемент, который затем меняется местами с элементом в первой ячейке. В неотсортированной части снова выбирается наименьший элемент и заменяется первым неотсортированным. Это делается до тех пор, пока все элементы массива не окажутся на своих местах.

Что мы узнали?

Массивы — это именованные коллекции данных одного типа. Вводить элементы матрицы удобнее всего с помощью клавиатуры или путем генерации случайных чисел. Обработка массива включает вычисление суммы или произведения элементов массива, поиск элемента по заданному условию и сортировку массива.