Программа Borland Pascal
ЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂ
В своей простейшей форме программа Borland Pascal состоит из
заголовка программы, который именует программу, и основного прог-
раммного блока, выполняющего назначение программы. В основном
программном блоке находится секция кода, заключенная между ключе-
выми словами begin и end. Приведем простейшую программу, иллюст-
рирующую эти принципы:
program Privet;
begin
Writeln('Добро пожаловать в Borland Pascal');
end.
Первая строка - это заголовок программы, который именует
данную программу. Остальная часть программы - это исходный код,
который начинается ключевым словом begin и заканчивается end. Хо-
тя данная конкретная программа содержит только одну строку, их
может быть много. В любой программе Borland Pascal все действия
выполняются между begin и end.
Процедуры и функции
ЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂ
Код между последними операторами begin и end программы уп-
равляет логикой программы. В очень простой программе в этой сек-
ции кода может содержаться все, что вам нужно. В более крупных и
сложных программах размещение в этой секции всего программного
кода может затруднить чтение и понимание программы. К тому же ее
будет труднее разрабатывать.
Процедуры и функции позволяют разделить логику программы на
более мелкие и управляемые фрагменты и аналогичны подпрограммам в
других языках. Как и в основном блоке программы, все действия в
процедурах и функциях заключаются в begin и end. Каждый из этих
сегментов кода выполняет конкретную задачу.
‚ЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂѓ
Ѓ Процедура или функция Ѓ
Ѓ‚ЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂѓЃ
ЃЃ Заголовок процедуры или функции ЃЃ
Ѓ„ЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂ…Ѓ
Ѓ‚ЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂѓЃ
ЃЃ Блок процедуры или функциями ЃЃ
ЃЃ begin ЃЃ
ЃЃ‚ЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂѓЃЃ
ЃЃЃ Логика ЃЃЃ
ЃЃ„ЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂ…ЃЃ
ЃЃ end; ЃЃ
Ѓ„ЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂ…Ѓ
„ЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂ…
Рис. 1.1 Диаграмма процедуры или функции.
Если вы обнаружите, что в вашей диаграмме одни и те же дейс-
твия выполняются многократно, такую логику желательно выделить в
процедуру или функцию. Вы можете один раз записать этот код в
процедуре или функции, а затем многократно вызывать его в прог-
рамме.
Приведем пример функции. Следующая функция GetNumber получа-
ет число от пользователя:
function GetNumber: Real;
var
Responce: Real;
begin
Write('Введите число: ');
Readln(Response);
GetNumber := Response;
end;
Процедура или функция должна содержаться в программе перед
секцией основного кода. В основном коде она может затем использо-
ваться (вызываться).
‚ЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂѓ
Ѓ Процедура или функция Ѓ
Ѓ‚ЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂѓЃ
ЃЃ Заголовок процедуры или функции ЃЃ
Ѓ„ЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂ…Ѓ
Ѓ‚ЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂѓЃ
ЃЃ Блок процедуры или функциями ЃЃ
ЃЃ‚ЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂѓЃЃ
ЃЃЃ Процедуры или функции (0 или более) ЃЃЃ
ЃЃ„ЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂ…ЃЃ
ЃЃ begin ЃЃ
ЃЃ‚ЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂѓЃЃ
ЃЃЃ Логика ЃЃЃ
ЃЃ„ЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂ…ЃЃ
ЃЃ end; ЃЃ
Ѓ„ЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂ…Ѓ
„ЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂЂ…
Рис. 1.2 Простая программа на Паскале.
В следующем примере дается набросок программы, в которой ис-
пользуется функция GetNumber. Программист разделил логику прог-
раммы на три задачи:
1. Получение числа от пользователя.
2. Выполнение с этим числом необходимых вычислений.
3. Печать отчета.
Основная логика программы заключена в последнем блоке
begin..end.
Program Report;
var
A: Real;
{ другие описания }
.
.
.
function GetNumber: Real;
var
Responce: Real;
begin
Write('Введите число: ');
Readln(Response);
GetNumber := Response;
end;
procedure Calculate(X: Real);
.
.
.
procedure PrintReport;
.
.
.
begin
A: = GetNumber;
Calculate(A);
PrintReport;
end.
Основная логика программы достаточно проста для понимания.
Все детали убраны в тела процедур и функций. Использование проце-
дур и функций позволяет вам рассматривать программу более удобным
и модульным способом.