36574

Структурный тип массив. Обработка массивов

Контрольная

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

Такие операторы присваивания могут использоваться для копирования одного массива в другой. Однако над массивами не определены отношения. Кроме того, в Турбо Паскале нельзя использовать выражения над массивами.

Русский

2013-09-22

31 KB

3 чел.

Структурный тип массив. Обработка массивов.

Для массивов допустим оператор присваивания в форме:

<переменная1-массив> := < переменная2 -массив>;

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

Такие операторы присваивания могут использоваться для копирования одного массива в другой. Однако над массивами не определены отношения <,>,<=,>=,=.<>. Кроме того, в Турбо Паскале нельзя использовать выражения над массивами.

За исключением приведенного выше оператора присваивания, обработка массивов осуществляется путем обработки его элементов. Для этого следует использовать доступ к элементам через индексы. Например, для индексных переменных допустим оператор присваивания вида:

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

где: < выражение > должно быть согласовано по типу с типом элементов массива. Индексированные имена могут входить в состав выражений соответствующего типа также как простые имена.

Важным средством обработки массивов являются циклы. Хотя для обработки массивов можно использовать описанные ранее итерационные циклы, обычно более удобными являются циклы с параметром.

В Турбо Паскале имеются две разновидности циклов с параметром (циклов for):

for <параметр> := < нач.зн.> to <кон.зн.> do <оператор тела цикла>;

for <параметр> := <кон.зн.> downto <нач.зн.> do <оператор тела цикла>;

Параметром цикла for может быть переменная любого порядкового типа.

< нач.зн.> и <кон.зн.> - выражения того же типа, что и параметр, определяющие границы изменения параметра в данном цикле.

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

Цикл с параметром (первая его разновидность) выполняется следующим образом: вначале вычисляются < нач.зн.> и < кон.зн.> и осуществляется присваивание параметру цикла < нач.зн.>. Проверяется, не превышает ли параметр значения <кон.зн.> (т.е. выполняется сравнение <параметр> < <кон.зн.>), и если не превышает, то выполняется тело цикла, после чего параметру присваивается следующее по порядку значение (т.е. succ(< нач.зн.>)) и цикл повторяется. Если параметр превысил <кон.зн.>, цикл завершается (осуществляется переход к следующему за циклом оператору программы).

Таким образом, цикл for повторяет выполнение оператора тела цикла несколько раз с разными значениями параметра от начального значения до конечного значения.

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

При использовании цикла for желательно, чтобы параметр цикла, выражения <нач.зн.> и <кон.зн.> не изменяли свои значения при выполнении тела цикла ( а также <нач.зн.> и <кон.зн.> не имели зависимости от параметра цикла). Это гарантирует завершение цикла за конечное число шагов и ясную для понимания структуру цикла.

Хотя часто цикл for используют с целочисленным параметром, полезно помнить, что он может быть использован с параметром любого порядкового типа, что придает ему значительно большую гибкость, чем имеют циклы с параметром в других языках (например, в Фортране).

Задача 4.2.6(12)

program Project12;

type mas=array[1..4,1..5] 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,max:Integer;

begin

max:=x[e1,1];

n:=e1;

k:=1;

for i:=e1 to e2 do

for j:=1 to 5 do

if x[i,j]>max then

begin

max:=x[i,j];

n:=i;

k:=j;

end;

end;

begin

for i:=1 to 4 do

for j:=1 to 5 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 4 do begin

for j:=1 to 5 do begin

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

end; writeln; end;

Readln;

end.


 

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

53932. ГЕОГРАФІЧНИЙ КВК СЕРЕД 6-Х КЛАСІВ «ЄВРО-2012» 113.5 KB
  Присутні: учні 6х класів команди класів класні керівники члени журі Обладнання: настінна політична карта Європи переносна дошка прапори європейських державучасниць фінальної стадії чемпіонату таблиці розклади матчів символи чемпіонату Мета: розширення асоціативного навчального поля при вивченні учнями географії навчання дітей формулювати висловлювати аргументувати свої думки вмінню спілкуватися працювати в команді виховання інтересу до географії з допомогою викликання емоційного піднесення розвиток творчості і фантазії дітей...
53933. Дитячий світ – країна мрій 41 KB
  Птахи зібралися у великі зграї але не можуть відлетіти в теплі краї поки їх не покличуть лагідно. Гра Поклич лагідно пташку Ластівка ластівочка зозуля зозулька журавель журавлик шпак шпачок чапля чапелька соловей соловейко лелека лелеченька жайворонок жайвороночок б. Гра Зайвий гриб Опеньок білий гриб мухомор лисички. Гра...
53934. КВК з математики 2 клас 49 KB
  Мета. У цікавій формі закріпити одержані знання з математики; розвивати мислення, память,вміння спілкуватись. Виховувати почуття дружби, інтерес до математики.
53935. Люби, вивчай українські пісні 30 KB
  Мета: узагальнити, перевірити та оцінити набуті знання учнів, розвивати аналітичні,логічні та творчі здібності, виховувати любов до пісні та рідного краю.
53937. Урок КВН по теме: «Многочлены» 76.5 KB
  Цель: Развить интерес к более глубокому изучению темы. В течение урока настойчиво приглашать учащихся к обмену мнениями, к критике ошибочных утверждений, к защите полученных выводов и рациональному поиску истины.
53938. Финансовое планирование. Виды планов. Содержание и последовательность разработки 28.5 KB
  Гавриловы Граня Нина Витя смотрят телевизор. Нина плачет сидя у стола. Вместе с ним кидается заплаканная Нина в дверях удерживает Витю спрашивает: Кто там Женский голос. Нина накидывает цепочку открывает дверь долго смотрит затем впускает соседку Анну Степановну.
53939. Человек и ситуация. Уроки социальной психологии 2.54 MB
  Уроки и вызовы социальной психологии Слабость индивидуальных различий Власть ситуаций Тонкости ситуаций Предсказуемость человеческого поведения Противоречие между уроками социальной психологии и опытом повседневной жизни Три кита социальной психологии...
53940. Зорова сенсорна система. Будова ока. Виявлення сліпої плями на сітківці ока 93 KB
  Ознайомити учнів із особливостями будови зорової сенсорної системи; особливу увагу звернути на будову ока; розкрити значення акомодації як однієї із головних функцій.Будова ока оболонки.