- •Методические указания и задание на выполнение контрольной работы
- •Горячие клавиши меню
- •Горячие клавиши редактирования
- •Горячие клавиши управления окнами
- •Горячие клавиши встроенной справочной информации
- •Горячие клавиши отладки/запуска
- •1.2. Создание программы
- •1.3. Анализ программы
- •1.4. Сохранение программы
- •1.5. Компиляция программы
- •1.6. Выполнение программы
- •2. Программирование на turbo pascal
- •2.1. Элементы программирования
- •2.2. Типы данных
- •Целочисленные типы данных
- •2.3. Тип массив
- •2.4. Операторы
- •2.5. Вывод
- •2.5.1. Процедура WriteLn
- •2.5.2. Ввод
- •2.6.2. Оператор выбора Case
- •2.7. Цикл.
- •2.7.1. Цикл while.
- •2.7.2. Цикл Repeat … Until
- •2.7.3. Цикл For
- •2.8. Процедуры и функции.
- •2.9. Структура программ.
- •2.10. Структура процедуры и функции.
- •2.11. Пример программы.
- •Контрольные задания
- •Вариант №0
- •Вариант №1
- •Вариант№2
- •Вариант №3
- •Вариант №4
- •Вариант №5
- •Вариант №6
- •Вариант №7
- •Вариант №8
- •Вариант №9
2.8. Процедуры и функции.
Вы изучили условное и итеративное выполнение операторов программы. Теперь посмотрим, как можно выполнить один и тот же набор команд в разных местах программы и с разными данными. Можно объединить эту группу операторов в подпрограмму, которую можно вызвать по необходимости.
В Паскале есть два вида подпрограмм: процедуры и функции.
Главное различие между ними – это то, что функция возвращает значение и может быть использована в выражении:
X := sin(A);
В то время, как процедура может быть вызвана:
WriteLn (“это проверка”);
Однако перед знакомством с процедурами и функциями, необходимо рассмотреть структуру программ.
2.9. Структура программ.
В стандартном Паскале программы имеют жесткий формат:
Program имя программы
Label
Метки;
Const
Объявление констант;
Type
Объявление типов данных;
Var
Объявление переменных;
Procedure и function;
Begin
Тело программы
End.
Наличие всех пяти секций объявлений – Label, Const, Type, Var, Procedure и function – в Вашей программе необязательно. Однако для стандартного Паскаля, если они присутствуют, порядок их следования строго регламентирован, и в программе они должны присутствовать только один раз. За секцией объявлений, следуют процедуры и функции, и только затем тело программы.
Turbo Pascal обеспечивает более гибкую структуру программы. Главное – это оператор program должен быть первым, а тело программы последним. Порядок описания остальных секций жестко не регламентирован, но идентификаторы должны быть объявлены до их использования во избежание ошибок компиляции.
2.10. Структура процедуры и функции.
Процедуры и функции, известные под общим именем как подпрограммы могут быть описаны в любом месте программы, но до тела главной программы. Формат процедур:
Procedure имя процедуры (параметры);
Label
Метки;
Const
Объявление констант;
Type
Объявление типов данных;
Var
Объявление переменных;
Procedure, function;
Begin
Тело главной процедуры;
End.
Функции имеют такой же формат, как и процедуры, только они начинаются с заголовка function и заканчиваются типом данных возвращаемого значения:
Functionимя функции (параметры): тип данных;
Имеются только два различия между программами, процедурами и функциями:
процедуры и функции имеют заголовок procedureилиfunction, соответственно, а неprogram;
процедуры и функции заканчиваются точкой с запятой (;), а не точкой (.).
Процедуры и функции могут иметь описание своих констант, типов данных, переменных и свои процедуры и функции. Но все эти элементы могут быть использованы только в тех процедурах и функциях, где они объявлены.
2.11. Пример программы.
Рассмотрим версию программы DORATIO, в которой используются процедура получения двух значений и функция, определяющая их отношение:
Program DoRatio;
Var
A, B: Integer;
Ratio: Real;
Procedure GetData (var X, Y: Integer);
Begin
Writeln (‘Введите два числа:’);
Readln (X, Y);
End;
Function GetRatio (I, J: Real);
Begin
GetRatio := I / J;
End;
Begin
GetData (A, B);
Ratio:= GetRatio (A, B);
Writeln (‘Отношение равно’, Ratio);
End.
Это, конечно, не улучшение первоначальной программы, так как она имеет большой размер и медленнее выполняется. Но она показывает как используются и работают процедуры и функции.