Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Текст программы

END.

BEGIN

Begin

Организация процедур

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

На заседании цикловой комиссии Зам. директора по УВР

«___»_____________2008 г. ______________З.Г. Штокалюк

Председатель цикловой комиссии «___»___________2008 г.

____________ О.В. Гармаш

 

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

 

к лабораторной работе № 12

 

 

Тема:

«Организация процедур»

 

 

Дисциплина: «Программирование на языке высокого уровня»

для студентов специальности 230101

 

 

Разработал преподаватель Баев А.В.

 

2008 г.

Цель работы:

1. Получить навыки разработки программ с использованием процедур.

Краткие сведения из теории

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

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

В Паскале используют подпрограммы двух типов: процедуры (Procedure) и функции (Function). Подпрограммы по структуре сходны с программой, но они обязательно имеют оригинальное имя, которое указывается в заголовке. Подпрограммы описываются в разделе описаний, использующих (вызывающих) их программ (или подпрограмм).

Описание процедур в Паскале имеет вид:

Procedure Имя процедуры (формальные параметры);

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

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

End;

Формальные параметры вместе с круглыми скобками могут отсутствовать. Формальные параметры представляют собой список переменных с указанием их типа. Все типы, используемые в заголовках процедур и функций, кроме простых, должны быть описаны в подразделе Type вызывающей эти процедуры или функции программной единицы. Те параметры, которые изменяются в процедуре, называют выходными и перед ними в заголовке процедуры обязательно ставится слово Var. Параметры, имеющие файловый тип, должны быть обязательно описаны как Var - параметры и в процедурах и в функциях.

Вызов процедуры в использующих ее программных единицах (основной программе или подпрограммах) имеет следующий вид:

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

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

Если параметры все же необходимы, то между фактическими и формальными параметрами должно быть установлено соответствие по их количеству, порядку следования и типу данных.

Имена фактических и формальных параметров могут быть как одинаковыми, так и различными.

Пусть в программе две процедуры Р1 и Р2 вызываются из основной программы. В свою очередь в процедуре Р1 используется процедура Р11 и она должна быть описана в разделе описаний вызывающей ее процедуры Р1.

PROGRAM P;

Раздел описаний основной программы

Procedure P1;

Раздел описаний процедуры P1

Procedure P11

Раздел описаний процедуры P11

Begin

Раздел операторов процедуры P11

End;

Begin

Раздел операторов процедуры P1

End;

Procedure P2;

Раздел описаний процедурв P2

Begin

Раздел операторов процедуры P2

End;

Раздел операторов основной программы

Имена, объявленные в разделе описаний основной программы, действуют в разделе операторов основной программы и в любой подпрограмме. Эти имена называются глобальными. Имена, объявленные в какой-либо подпрограмме, действуют в этой подпрограмме и в любой, объявленной в ней процедуре или функции. Такие имена называются локальными. Они недоступны для операторов основной программы. Область действия меток переходов в пределах каждой программной единицы своя. Нельзя перейти по оператору GOTO из одной процедуру в другую.

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

Даны два массива М1 и М2, содержащие К1 и К2 целых чисел, соответственно. Определить максимальные числа в каждом из этих массивов, сравнить найденные значения между собой и вывести большее из них на экран.

Схема алгоритма

 

Выделим глобальные переменные, которые используются в главной программе: М1, М2, К1, К2, Мах1, Мах2.

Uses crt;

Type Tmas=array[1..1000] of integer;

Var M1, M2: Tmas;

K1, K2, Max1, Max2: integer;

{ Процедура ввода длины массива и самого массива}

Procedure Vvod(Var K:integer; Var M:Tmas);

Var i:integer;

<== предыдущая лекция | следующая лекция ==>
Куклы в системе культуры | Краткая теория
Поделиться с друзьями:


Дата добавления: 2015-05-10; Просмотров: 231; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.01 сек.