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

Лабораторная работа № 3

Тема : Процедуры, функции, модули в Delphi.

Цель работы: изучить понятия процедуры, функции, модуля; изучить компоненты ввода/вывода данных StringGrid и Memo. Создать проект для работы с массивами средствами Delphi 7.0.

Теоретические сведения.

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

Декомпозиция (разбиение) программы на небольшие логически завершен­ные блоки - это один из основных путей написания программы в ясной и по­нятной форме.

3.1. Подпрограммы

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

Спецификация (прототип) подпрограммы включает:

  • Тип подпрограммы: function (функция), procedure (процедура).

function - подпрограмма явно возвращает только один результирую­щий объект данных;

procedure - подпрограмма возвращает более одного значения или дей­ствия подпрограммы сводятся только к модификации ее аргументов вместо возвращения результата.

  • Имя подпрограммы;

  • Формальные параметры: аргументы (порядок следования, тип каждого аргумента) и результаты (порядок следования, тип каждого результа­та).

Реализация подпрограммы (тело подпрограммы) включает:

  • Описание локальных данных, используемых подпрограммой;

  • Операторы, задающие действия, которые должна выполнить подпро­грамма.

Локальные данные и операторы инкапсулированы (спрятаны), так что ни локальные данные, ни операторы по отдельности не доступны Пользователю подпрограммы. Пользователь может только вызвать подпрограмму. В тело подпрограмм могут входить определения других (вложенных) подпрограмм.

Вызывающая программа - программа (подпрограмма), которая обраща­ется к подпрограмме (вызывает подпрограмму).

Оператор вызова - оператор вызывающей программы, с помощью кото­рого она обращается к подпрограмме. Оператор вызова подпрограммы со­держит:

  • имя подпрограммы;

  • список фактических параметров.

Фактические параметры - это элементы вызывающей программы (константы, переменные, массивы и другие), значения которых пере­даются в подпрограмму или возвращаются из нее. При вызове под­программы значения фактических параметров присваиваются соот­ветствующим формальным параметрам (типы фактических и фор­мальных параметров должны совпадать!).

Вызываемая программа - подпрограмма, к которой обращается вызы­вающая программа. Вызываемая программа возвращает управление вызы­вающей программе, которая продолжает свое выполнение с оператора, сле­дующего за оператором вызова.

Схема передачи управления между вызывающей и вызываемой програм­мами приведена на рисунке 3.1.

Рисунок 3.1 - Схема передачи управления между вызывающей и вызываемой программами

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