36575

Структурный тип маcсив. Описание мас и доступ к эл мас

Контрольная

Информатика, кибернетика и программирование

Идея массива состоит в том чтобы объединить в одно целое фиксированное количество элементов одного и того же типа. Общая форма описания массива имеет вид: type имя типамассива = rry [ тип индекса ] of тип элементов ; где: имя типамассива имя выбираемое программистом. тип индекса любой порядковый тип кроме longint или типдиапазон.

Русский

2013-09-22

33 KB

0 чел.

Структурный тип маcсив. Описание мас и доступ к эл мас.

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

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

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

type <имя типа-массива> = array [ < тип индекса > ] of < тип элементов>;

где: <имя типа-массива> - имя, выбираемое программистом.

 < тип индекса > - любой порядковый тип (кроме longint) или тип-диапазон.

 < тип элементов > - любой тип Турбо Паскаля.

В качестве типа индекса часто используют тип-диапазон, указывающий границы индекса. Например:

type measure = array [ 1..16] of real; {тип -массив измерений}

var m1,m2: measure; {переменные-массивы измерений}

Кроме переменных допускается также описание типизированных констант-массивов, в котором элементы-константы перечисляются через запятую. Например:

сonst vect: array [1..8] of 0..9 = (0,0,0,0,1,2,3,4);

Если тип элементов - простой тип, то массив - одномерный (вектор). Однако тип элементов может быть в свою очередь тип-массив. В этом случае мы имеет дело с массивом более высокой размерности. Если тип элементов - одномерный массив, то описываемый массив - двумерный (матрица). Аналогичным образом можно получить трехмерные, четырехмерные массивы и т.д.

Двумерный массив (матрица) может быть описан в виде:

type <имя типа-массива>= array [<тип индекса1>] of array [<тип индекса2>] of <тип >;

Однако в Паскале допускается более компактная форма таких описаний, в которой вместо одного типа индекса используется список из нескольких типов индексов.

Для матрицы такое описание будет иметь вид:

type <имя типа-массива>=array[<тип индекса1,тип индекса2>]of <тип компонент>;

Например: type matr= array [ 1..16,1..8] of real; {тип - матрица 16х8}

var mt1,mt2: matr; {переменные типа matr}

Доступ к элементам массива осуществляется посредством так называемых индексированных имен, имеющих вид:

<имя переменной-массива > [<индексное выражение > ];

где : <индексное выражение > - выражение типа индекса (в частности, индексным выражением может быть переменная).

В случае, когда массив многомерный (имеет несколько индексов), доступ к элементу массива осуществляется по списку индексных выражений в виде:

<имя переменной-массива >[<индексное выражение1 >,<индексное выражение2 >, ...];

Например: m1[ j ] {значение j- элемента массива m1}

mt2[j+3, k] {значение элемента (j+3)-строки, k-столбца матрицы mt2}

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

Задача 4.2.6(13)

program Project13;

type mas=array[1..3,1..4] of Integer;

var a:mas;

i,j,l1,l2,d1,d2,s:Integer;

procedure p(x:mas; e1,e2:Integer; var n,k:integer);

var j,min:Integer;

begin

min:=x[1,e1];

n:=1;

k:=e1;

for j:=e1 to e2 do

for i:=1 to 3 do

if x[i,j]<min then

begin

min:=x[i,j];

n:=i;

k:=j;

end;

end;

begin

for i:=1 to 3 do

for j:=1 to 4 do

read(a[i,j]);

p(a,1,2,l1,d1);

p(a,3,4,l2,d2);

s:=a[l1,d1];

a[l1,d1]:=a[l2,d2];

a[l2,d2]:=s;

Writeln;

for i:=1 to 3 do begin

for j:=1 to 4 do begin

write(a[i,j],' ');

end; writeln; end;

Readln;

Readln;

 end.


 

А также другие работы, которые могут Вас заинтересовать

43179. СИСТЕМА АВТОМАТИЧЕСКОЙ СТАБИЛИЗАЦИИ РАБОЧЕГО МЕХАНИЗМА 1.35 MB
  Постановка общей задачи стабилизации рабочего механизма. Математическое описание системы стабилизации. Формирование функциональной схемы системы. Построение линеаризованной математической модели системы. Формирование структурной схемы системы.
43180. ЭНЕРГЕТИЧЕСКИЙ И КИНЕМАТИЧЕСКИЙ РАСЧЕТ ПРИВОДА 1.03 MB
  Определение мощности на выходе РВ где окружная сила на барабане в кН скорость конвейера в м с Определение общего КПД привода где ц=092 – КПД цепной передачи табл.6 з=097 – КПД зубчатой передачи табл.6 м=098 – КПД муфты табл.6 оп=0992 – КПД опор приводного вала табл.
43181. Организация связи между дорожными и отделенческими узлами магистрали 5.27 MB
  Определение количества каналов различных видов связи между узлами магистрали [2.3 Составление таблицы схемы распределения каналов между пунктами [3] 2 Выбор оптимального варианта организации связи [3.1] 3 Построение схем связи [4] 4 расчет магистрали [4.
43182. Разработки и эксплуатации нефтегазодобывающих предприятиях «Джалильнефть», «Елховнефть» 1.77 MB
  Литологофизическая характеристика коллекторов Физикохимические свойства жидкостей и газов Эксплуатация скважин насосными установкам. Классификация и характеристика видов подземного ремонта скважин. Классификация и характеристика видов капитального ремонта скважин. Причины снижения продуктивности скважин в процессе эксплуатации.
43183. ВИВЧЕННЯ МУТАГЕННОЇ АКТИВНОСТІ ГРУНТІВ З ПОРОДНЬОГО ВІДВАЛУ ВУГІЛЬНИХ ШАХТ ЦЗФ ЗАТ «ЛЬВІВ СИСТЕМ ЕНЕРГО» 334 KB
  Основний породний відвал ЦЗФ має висоту 68 метрів і займає площу 75 га. Верхівка відвалу плоска з горбом посередині, висота якого 10-12 метрів. Навколо горба на верхівці відвалу, розташовані досить великі за площею, плоскі відсипки породи, які відрізняються за кольором – при обстеженні нами у 2006 році на території породного відвалу ЦЗФ переважали аргілітові породи в основному чотирьох кольорів – чорного, червоного, темно-сірого та сіро-жовтого, які і займали основну площу породного відвалу. Площа відвалу терасована на 5 терас, шириною приблизно 8-10 метрів, які утворились за рахунок доріг, по яких їздять важковантажні машини.
43184. Особливості уяви дітей дошкільного віку 340 KB
  Центральним новоутворенням психічного розвитку дітей дошкільного віку є уява. Уява - один із важливих психічних процесів, що безпосередньо входить у будь-який творчий процес людини на різних етапах її життя та забезпечує засвоєння різних форм людської культури в онтогенезі. Уява формується разом із допитливістю дитини ще в ранньому віці, але свого інтенсивного розвитку і особливого значення набуває саме в дошкільному віці.
43185. Эффективность действия галоперидола и сероквеля на продуктивную, негативную, депрессивную симптоматику в рамках параноидной непрерывно-текущей шизофрении (согласно критериям МКБ 10) у женщин 310.5 KB
  От своевременной и адекватной терапии больных шизофренией в конечном счете зависит отдаленный прогноз и исход заболевания. К ним следует отнести вопросы о предпочтительности монотерапии или полипрогмазии необходимость лечения в межприступном периоде вопрос о способах введения нейролептиков и уровня их доз резистентность к нейролептической терапии. В связи с этим трудно переоценить значение любого атипичного нейролептика особенно если он действительно позволяет решить проблему побочных эффектов и резистентности к терапии. Общие принципы...
43186. Порядок учета и контроля выпуска и отгрузки готовой продукции 251 KB
  В настоящее время бухгалтерская служба имеет реальную возможность формировать модель хозяйственной деятельности предприятия, основываясь на базе первичных учетных документов, что вывело ее в разряд подразделений, которые, способны осуществлять прогнозирование финансового результата. Подвергнув обработке журналы хозяйственных операций, составленные в течение нескольких прошедших периодов, бухгалтерия может с определенной степенью точности предугадать величину будущей прибыли и повлиять на нее.
43187. Инфляция и её социально-экономические последствия 341.5 KB
  Проблема инфляции занимает человечество уже более 200 столетий. Целю курсовой работы является : раскрыть смысл процесса инфляции посредством рассмотрения понятия инфляции ее причин и видов. Задачи курсовой работы: раскрыть смысл понятия инфляция; дать классификацию инфляции; изучить экономические и социальные последствия инфляции; рассмотреть историю инфляционных процессов и выявить их влияние на экономику; выявить возможные причины инфляции и проанализировать их; изложить возможности преодоления инфляции и меры борьбы с ней;...