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

Результаты работы программы

ИСХОДНЫЕ МАССИВЫ

МАССИВ X

5.00 9.00 8.00 7.00 2.00 0.00 2.00 6.00 5.00 9.00

МАССИВ Y

8.00 3.00 0.00 1.00 6.00

МАССИВ Z

9.00 4.00 0.00 6.00 2.00 4.00 6.00 7.00

МАССИВЫ ПОСЛЕ ПЕРЕСТАНОВКИ

МАССИВ X

0.00 2.00 2.00 5.00 5.00 6.00 7.00 8.00 9.00 9.00

МАССИВ Y

0.00 1.00 3.00 6.00 8.00

МАССИВ Z

0.00 2.00 4.00 4.00 6.00 6.00 7.00 9.00

РАБОТУ ВЫПОЛНИЛ ИВАНОВ И.И.

Контрольные вопросы:

  1. Чем отличается подпрограмма функция от подпрограммы процедуры?

  2. Что называется фактическим и формальным параметром?

  3. В чем разница передачи данных по ссылке и по значению?

Лабораторная работа №11 название: организация программ с использованием модулей

ЦЕЛЬ ЗАДАНИЯ:

Получение практических навыков в написании программ с использованием МОДУЛЕЙ

ПОСТАНОВКА ЗАДАЧИ:

Дано два одномерных массива. Требуется вычислить функцию

,

где S1 и K1 - сумма и число положительных элементов первого массива,

S2 и K2 - сумма и число отрицательных элементов второго массива.

Для вычисления суммы и числа положительных или отрицательных элементов массива использовать одну и ту же процедуру, размещенную в модуле. Процедура должна позволять решать задачи при числе элементов массива N <= 100.

СОДЕРЖАНИЕ ОТЧЕТА:

1. Постановка задачи для конкретного варианта.

2. Исходный текст модуля и программы, блок - схему алгоритма.

3. Результаты выполнения программы.

МЕТОДИЧЕСКИЕ УКАЗАНИЯ

1. МОДУЛЬ - это автономно компилируемая программная единица, включающая в себе различные компоненты раздела описаний (типы, константы, переменные, процедуры и функции). Модуль сам по себе не является выполняемой программой - его объекты используются другими программными единицами.

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

Заголовок модуля составляется из служебного слова UNIT и следующего за ним имени модуля. Заголовок завершается символом ";" (точка с запятой). Для правильной работы среды ТУРБО-ПАСКАЛЯ это имя должно совпадать с именем дискового файла, в котором помещается исходный текст модуля. Если, например, имеем заголовок UNIT GLOBAL; то исходный текст соответствующего модуля должен размещаться в дисковом файле GLOBAL.PAS.

Интерфейсная часть начинается со служебного слова INTERFACE, за которым следует совокупность обычных описаний. Часть реализации начинается служебным словом IMPLEMENTATION и содержит описание подпрограмм, объявленных в интерфейсной части. В ней могут объявляться локальные для модуля объекты, вспомогательные типы, константы и переменные. Завершает модуль, как и программу, служебное слово END и символ точка.

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

unit cmplx;

interface

type complex=record re,im: real end;

procedure addс(x,y:complex; var z:complex);

implementation

procedure addс;

begin

z.re:=x.re+y.re;

z.im:=x.im+y.im

end

end.

В этом модуле описан тип complex и процедура addс сложения комплексных чисел. Модуль компилируется точно таким же образом, как и обычные подпрограммы. Но так как модуль не является непосредственно выполняемой единицей, то в результате его компиляции образуется дисковый файл с расширением .TPU, при этом имя файла берется из имени файла с исходным текстом модуля.

Для того чтобы получить доступ к интерфейсным объектам модуля необходимо указать в программе имя нужного TPU - файла. Соответствующая конструкция называется спецификацией используемых модулей и имеет следующий вид:

USES U1,U2,U3;

где USES- служебное слово, U1,U2,U3- имена используемых модулей.

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

2. Правильность работы программы проверить на следующих тестовых задачах:

А) 1-ый массив N=10.

элементы с 1-го по 5-ый равны 4

элементы с 6-го по 10-ый равны -2

2-ой массив N=5

все элементы массива равны -3

ОТВЕТ: Z=1.75

Б) 1-ый массив N=5

все элементы массива равны 5

2-ой массив N=3

все элементы массива равны 2

ОТВЕТ: Z ВЫЧИСЛИТЬ НЕВОЗМОЖНО

Контрольные вопросы:

  1. Что называется модулем?

  2. Какова структура модуля?

  3. На какие части разбиты программные ресурса модуля?

  4. В чем отличие локальных и глобальных переменных?

  5. Как обеспечить доступ к интерфейсным объектам модуля?

0

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