«аочное дистанционное образование с получением государственного диплома через Internet










ѕолучить информацию о поступлении
 
√лавна€ Ќовости  арта сайта ‘отоальбом √остева€ книга  онтакты

 

ќперации над элементами массива

ѕосле объ€влени€ массива каждый его элемент можно обработать, указав идентификатор (им€) массива, а за ним Ц индекс элемента в квадратных скобках. Ќапример, запись Mas[2], VectorZflO] позвол€ет обратитьс€ ко второму элементу массива Mas и дес€тому элементу массива VectorZ. ѕри работе с двумерным массивом указываютс€ два индекса, с n-мерным массивом Ц n индексов. Ќапример, запись MatrU[4,4] делает доступным дл€ обработки значение элемента, наход€щегос€ в четвертой строке четвертого столбца массива MatrU.

»ндексированные элементы массива называютс€ индексированными переменными и могут использоватьс€ так же, как и простые переменные. Ќапример, они могут входить в выражени€ в качестве операндов, использоватьс€ в операторах for, while, repeat, входить в качестве параметров в операторы Read, Readln, Write, Writeln им можно присваивать любые значени€, соответствующие их типу.

–ассмотрим типичные ситуации, возникающие при работе с данными типа array. ƒл€ этого опишем три массива и четыре вспомогательные переменные:

var

A,D : аггау[1..4] of real;

¬ : аггау[1..10.1..15] of integer;

I, J,   : integer;

S : real;

»нициализаци€ (присваивание начальных значений) массива заключаетс€ в присваивании каждому элементу массива одного и того же значени€, соответствующего базовому типу. Ќаиболее эффективно эта операци€ выполн€етс€ с помощью оператора for, например:

for I := 1 to 4 do A[I] := 0;

ƒл€ инициализации двумерного массива обычно используетс€ вложенный оператор for, например:

for I := I to 10 do

for J := 1 to 15 do

B[I,J] :=0;

Pascal не имеет средств ввода-вывода сразу всех элементов массива, поэтому ввод и вывод значений производитс€ поэлементно. «начени€ элементам массива можно присвоить с помощью оператора присваивани€, как показано в примере инициализации, однако чаще всего они ввод€тс€ с клавиатуры при помощи оператора Read или Readln с использованием оператора цикла for:

for I:=l to 4 do Readln(A[I]);

јналогично, значени€ двумерного массива ввод€тс€ с помощью вложенного оператора for:

for I := 1 to 10 do

for J := 1 to 15 do Readln (B[I,J]);

¬ св€зи с тем, что использовалс€ оператор Readln, каждое значение будет вводитьс€ с новой строки. ћожно ввести значени€ отдельных элементов, а не всего массива. “ак, при помощи операторов Read(A[3]); Read(B[6,9]); вводитс€ значение третьего элемента вектора ј и значение элемента, расположенного в шестой строке дев€того столбца матрицы ¬. ќба значени€ набираютс€ в одной строке экрана, начина€ с текущей позиции курсора.

¬ывод значений элементов массива выполн€етс€ аналогичным образом, но используютс€ операторы Write или Writeln:

for I := 1 to 4 do

Writeln (A[I]): {¬ывод значений массива ј}

или

for I ;= 1 to 10 do for J := 1 to 15 do Writeln (B[I.J]): {¬ывод значений массива ¬}

 опированием массивов называетс€ присваивание значений всех элементов одного массива всем соответствующим элементам другого массива.  опирование можно выполнить при помощи одного оператора присваивани€, например ј:= D; или с помощью оператора for:

for I := 1 to 4 do A[I] := D[I];

¬ обоих случа€х значени€ элементов массива D не измен€ютс€, а значени€ элементов массива ј станов€тс€ равными значени€м соответствующих элементов массива D. ќчевидно, что оба массива должны быть идентичны по структуре.

»ногда требуетс€ осуществить поиск в массиве каких-либо элементов, удовлетвор€ющих некоторым известным услови€м. ѕусть, например, требуетс€ вы€снить, сколько элементов массива ј имеют нулевое значение. ƒл€ ответа на этот вопрос введем дополнительную переменную   и воспользуемс€ операторами for и if:

  := 0;

for I := I to 4 do

if A[I] = 0 then   :=   + 1;

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

ѕерестановка значений элементов массива осуществл€етс€ с помощью дополнительной переменной того же типа, что и базовый тип массива. Ќапример, фрагмент программы, обменивающий значени€ первого и п€того элементов массива ј, будет выгл€деть следующим образом:

Vs:= A[5]; {Vs - вспомогательна€ переменна€}

ј[5]:= ј[1]; A[l]:= Vs;


”знать как сэкономить в кризис моно на сайте ekonom-it.ru

”пражнени€ по обработке файлов (упр 2.) ”пражнени€ по обработке файлов (упр 3.) ”пражнени€ по обработке файлов (упр 4.) ”пражнени€ по обработке файлов (упр 5.) ќписание типа Ђмассивї Ћинейна€ сортировка (сортировка отбором) —ортировка методом пузырька ”слови€ задач (без ответов) ќписание типа Ђћножествої ќперации над множествами 


 
     
   
 


ѕриглашаем прин€ть участие в круглом столе!
подробнее   >>>
 

»нститут ћенеджмента, Ёкономики и »нноваций начинает набор на курсы повышени€ квалификации!
подробнее   >>>
 

”важемые студенты јЌќ ¬ѕќ »ћЁи»!
подробнее   >>>
 

Ќачинаетс€ набор на курсы повышени€ квалификации!
подробнее   >>>
 

ѕриглашаем прин€ть участие в конференци€х!
подробнее   >>>
 


все новости...

 


–ассылки Subscribe.Ru
—овременное образование
ѕодписатьс€ письмом