Переменные типа массив. Виды массивов

Рассмотрим следующую задачу: Надо ввести три целых чисел с клавиатуры и из них найти минимальное по значению число. Результат вывести на экран.

Для решения можно предложить следующую программу:

program Primer_7;

var

Chislo1,Chislo2,Chislo3,Resultat:Integer;

procedure Init;

begin

Write('Insert chislo1 -');

Readln(Chislo1);

Write('Insert chislo2 -');

Readln(Chislo2);

Write('Insert chislo3 -');

Readln(Chislo3);

end;

procedure Work;

begin

if (chislo1<=chislo2) and (chislo1<=chislo3) then resultat:=chislo1;

if (chislo2<=chislo1) and (chislo2<=chislo3) then resultat:=chislo2;

if (chislo3<=chislo1) and (chislo3<=chislo2) then resultat:=chislo3;

end;

procedure Exit;

begin

writeln(resultat);

end;

begin

Init;

Work;

Exi;

end.

В результате работы программа выведет на экран одно из чисел первое, второе или третье, то которое будет минимальным. Изменим условие, вместо трех чисел, допустим, надо найти минимальное число среди 10 или 40 чисел. Используя предыдущий подход нам надо завести 10 или 40 переменных с различными именами. Более того, возрастет объем текста в процедуре Work, для выявления минимального числа. Как быть в этом случае? Можно ли упростить текст программы? Да, можно!

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

Если список, состоит из записей, которые характеризуются своим месторасположением в списке он называется линейным списком.

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

Одномерный массив (вектор). Элемент массива определяется своей позицией. В простейшем случае – это отсчет смещения от начала массива. Примером одномерного массива является список учеников в классном журнале.

  Лутковский
  Склунин
  Магулян
  Никитин
  Бовадулин

Фамилии учеников это элементы массива, а номер указывает на положение данного элемента в этом массиве. В данном случае, можно присвоить этому массиву имя "Ученик", тогда значением первого элемента (Ученик[1]), этого массива, будет "Лутковский", а четвертого элемента (Ученик[4]) - "Никитин".

Однако позиция элемента может определяться в координатной системе более чем одного измерения. Таким образом, элемент определяется несколькими индексами, например А[4,3,8]. Число индексов, требующихся для определения элемента, называется размерностью или, как принято говорить в математике, рангом массива.

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

Описание массива

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

Описание массива, как и всех переменных, производится в блоке описания Var. Для этого используется зарезервированное слово array. Описание массива выглядит так:

Одномерный массив

Massiv1: array [n1..n2] of тип переменной;

Двухмерный массив

Massiv2: array [m1..m2,n1..n2] of тип переменной;

Трехмерный массив

Massiv3: array [m1..m2,n1..n2,p1..p2] of тип переменной;

Где Massiv1, Massiv2, Massiv3 – имена массивов,

m1..m2,n1..n2,p1..p2 – пределы изменения индексов массива,

тип переменной – тип элементов массива.

Имя массива является единым для всех его элементов.

Нижний предел изменения индексов, как правило, принимают за 1.

Одномерный массив

Massiv1: array [1..n] of тип переменной;

Двухмерный массив

Massiv2: array [1..m,1..n] of тип переменной;

Трехмерный массив

Massiv3: array [1..m,1..n,1..p] of тип переменной;

Разность между верхним и нижним индексом плюс 1 и есть максимально возможное количество элементов с данным индексом.

Тип элемента массива может быть как любым простым типом (real, integer, char,..), так и составным типом (массивом, записью,..).

Общее количество памяти, выделяемое для данного массива, есть произведение объема памяти, занимаемой одним элементом массива, в зависимости от его типа, на общее количество элементов массива, которое определяется как произведение максимально возможного количества элементов по всем индексам


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  




Подборка статей по вашей теме: