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.


 

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

73923. The critique of modern democracy. Alternatives: participatory approach 44 KB
  In modern world we can often here such an expression as “democratical processes”. In general it is used with undoubted positive illumination, promoted like panacea in the field of political organization of the society.
73924. Вартість та оптимізація структури капіталу 111.5 KB
  Капітал є однією з фундаментальних економічних категорій, сутність якої наукова думка досліджує протягом багатьох століть. Серед основних харектеристик, які формують економічну сутність капіталу, слід виділити...
73925. УПРАВЛІННЯ ІНВЕСТИЦІЯМИ 311 KB
  Оцінка ефективності інвестиційних проектів. Тому передусім слід відзначити помилковість віднесення до форм інвестицій реінвестиції які характеризують не об’єкт вкладення капіталу а процес використання доходу отриманого від інвестиційних операцій у процесі реінвестицій згідно з цим же законом інвестиційний доход може бути використано на здійснення як капітальних так і фінансових інвестицій.
73926. Аналіз фінансових звітів 462.5 KB
  Аналіз ліквідності та фінансової стійкості підприємства. Аналіз прибутковості підприємства. При вивченні теми про аналіз фінансових звітів необхідно приділити увагу сутності цілям та задачам аналізу фінансового стану підприємства. Для забезпечення якісного та детального аналізу фінансових звітів необхідно оволодіти загальними концептуальнометодичними принципами підходів і трактовок фінансового стану підприємства.
73927. ВНУТРІШНЬОФІРМОВЕ ФІНАНСОВЕ ПРОГНОЗУВАННЯ ТА ПЛАНУВАННЯ 442.5 KB
  Фінансова стратегія підприємства. Прогнозування показників фінансової звітності підприємства. Головна мета фінансового плану підприємства полягала у виявленні невикористаних ресурсів і визначенні суми платежів у бюджет величина якої відповідала перевищенню доходів підприємства над його витратами. За ринкової економіки значно підвищується матеріальна відповідальність керівника підприємства за його фінансовий стан.
73928. Антикризове фінансове управління підприємством 138.5 KB
  Необхідність оволодіння основами антикризового фінансового управління зумовлена тим що в умовах ринкової економіки підприємства здійснюють свою фінансовогосподарську діяльність знаходячись під постійним впливом несприятливих внутрішніх та зовнішніх чинників які можуть призвести до фінансової кризи та банкрутства.
73930. Система забезпечення фінансового менеджменту 84.5 KB
  Фінансовий менеджмент є невід\'ємною складовою частиною загальної системи управління підприємством. Тому його організаційне забезпечення має бути інтегроване з загальною структурою управління підприємством.
73931. Визначення вартості грошей у часі та її використання у фінансових розрахунках 103.5 KB
  Визначення вартості грошей у часі та її використання у фінансових розрахунках. Необхідніть і сутність визначення вартості грошей у часі. Оцінка майбутньої та теперішньої вартості грошей з врахуванням фактору інфляції. Необхідніть і сутність визначення вартості грошей у часі.