Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
PPTP.doc
Скачиваний:
3
Добавлен:
07.11.2018
Размер:
806.91 Кб
Скачать

Пример выполнения задания 7

Дана матрица А(4,4).

Вычислить

Z= X1X4 +X2X3 + X3X2+ X4X1,

где Xk – наибольшее из значений элементов K – го столбца матрицы A.

Вычисление наибольшего значения оформить в виде функции.

program lab6;

type matr = array[1..4,1..4] of real;

var a: matr; z: real;

 x: array[1..4] of real;

 i, j: integer;

function max(y:matr; k: integer): real;

var m: real; i: integer;

begin

m: = a[1,k];

for i:= 2 to 4 do

if a[i,k]> m then m:= a[i,k];

max:=m

end;

begin

writeln(‘введите матрицу a(4,4)’);

for i:= 1 to 4 do

for j:= 1 to 4 do read(a[i,j]);

for i:= 1 to 4 do x[i] :=max(a,i);

z:=0;

for i:= 1 to 4 do

z := z + x[i] * x[5 – i];

writeln(‘z=’,z:6:2);

readkey;

end.

Тема 8 Организация программ с использованием процедур

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

Избежать дублирования операторов можно, если оформить повторяющуюся последовательность как процедуру и в том месте программы, где надо выполнить эти инструкции, указать ее имя.

В Турбо Паскале процедурой называется часть программы, имеющая имя и предназначенная для решения определенной задачи (вместо термина «процедура», часто используют термин подпрограмма).

Описание процедуры включает заголовок и тело процедуры. Заголовок состоит из зарезервированного слова procedure, идентификатора (имени) процедуры и заключенного в круглые скобки списка формаль­ных параметров с указанием типа каждого параметра.

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

procedure имя (формальные параметры);

Раздел описаний;

begin

Раздел операторов

end;

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

Нетрудно заметить, что структура процедуры копирует структуру программы в целом, т. е. состоит из заголовка, раздела описаний и раз­дела операторов. Различия лишь в заголовках и в том, что в конце про­цедуры ставится точка с запятой вместо точки в конце программы. Процедура помещается в основной программе после раздела описания переменных и перед разделом операторов основной программы.

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

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

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

Имя процедуры(список фактических параметров).

Фактические параметры отделяются друг от друга запятыми и являются реальными объектами программы, замещающими в разделе операторов процедуры формальные параметры. Описание фактических параметров содержится в разделе описаний переменных основной программы.

При вызове процедуры компьютер производит следующие действия. Сначала устанавливает взаимно однозначное соответствие между фактическими и формальными параметрами.

Соответствие между фактическими и формальными параметрами должно быть следующим:

– число фактических параметров должно быть равно числу формальных параметров;

– соответствующие фактические и формальные параметры долж­ны совпадать по порядку следования и по типу.

Данные из основной программы поступают в процедуру. Затем управление передается процедуре. Результаты выполнения процедуры передаются в основную программу и управление передается на оператор, следующий за вызовом процедуры. Соответствующие формальные и фактические пара­метры во избежание путаницы обычно обозначают разными буквами.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]